// ==UserScript== // @name WoTStatScript // @version 0.9.1.93 // @description More info for World of Tanks profile page. Updated for the new style. // @author Orrie // @contributor Boom_Box // @namespace http://forum.worldoftanks.eu/index.php?/topic/263423- // @icon http://dl.dropboxusercontent.com/u/12497046/wot/projects/statscript/img/icon.png // @match http://worldoftanks.eu/*/*/* // @match http://worldoftanks.com/*/*/* // @match http://worldoftanks.ru/*/*/* // @match http://worldoftanks.asia/*/*/* // @match http://worldoftanks.kr/*/*/* // @include http://worldoftanks.eu/*/*/* // @include http://worldoftanks.com/*/*/* // @include http://worldoftanks.ru/*/*/* // @include http://worldoftanks.asia/*/*/* // @include http://worldoftanks.kr/*/*/* // @grant GM_xmlhttpRequest // @downloadURL none // ==/UserScript== /* Changelog: http://dl.dropboxusercontent.com/u/12497046/wot/projects/statscript/WoTStatScript-changelog.txt */ // script variables var scripthost = "https://greasyfork.org/scripts/661-wotstatscript"; threadlink = "http://forum.worldoftanks.eu/index.php?/topic/263423-"; sid = "orrie_js_174043"; // noobmeter api id nm_host = "http://noobmeter.com"; scriptlink = ""; // get server info and webpage var wg_host = document.location.host; server = wg_host.match(/\.([^\.]+)$/)[1]; wg_path = document.location.pathname; wg_accounts = wg_path.match(/(community|uc)\/accounts\/\d+/); if (wg_path.match(/(edit|battles|provinces|reserve|treasury)/)) { wg_clans = null; } else { wg_clans = wg_path.match(/(community|uc)\/clans\/[\w\-]+/); } // determine browser types, beware inconsistencies, no method is reliable. var gecko = /Mozilla/.test(navigator.appCodeName), // true for ff (and chrome lol) opera = /Opera/.test(navigator.appName), // only true for opera chrome = /Chrome/.test(navigator.userAgent); if (opera || chrome) { gecko = false; } // globally inserting functions into head as scripts var scripts = [copyClipboard]; for (i=0; i 0) { // style variables var box_background = "border: 1px solid rgba(255, 255, 255, 0.05); box-shadow: 0 0 38px 1px rgba(0, 0, 0, 0.3) inset, 0 0 23px 1px rgba(255, 255, 255, 0.02), 0 0 5px 1px rgba(0, 0, 0, 0.5) inset;"; input_background = "background: rgba(0, 0, 0, 0.09); box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.15) inset, 0 0 38px 1px rgba(0, 0, 0, 0.3) inset, 0 0 23px 1px rgba(255, 255, 255, 0.02), 0 0 5px 1px rgba(0, 0, 0, 0.5) inset; color: #606061;"; // style contents var style = document.createElement('style'); style.className = "wotstatscript"; style.type ="text/css"; style.innerHTML // global rules = "h3, h4 {margin: 0 0 15px; text-align: center;}" + "h5 {margin: 5px 0 8px;}" + "p, .reg-KR p {margin: 0;}" + ".reg-KR p {line-height: 133%;}" + "table {width: 100%;}" // page fix page slowdown + ".l-page {background-position: center 0 !important;}" // container wrapper + ".l-container-wrapper {background: none;}" // content width + ".l-content {margin: 0 22px 25px; width: 955px}" // background rules + ".b-background {height: 315px; left: -23px; opacity: 0.5; position: absolute; top: -25px; width: 1000px; z-index: -1;}" + ".b-background img {width: 100%;}" // profile wrapper rules + ".b-profile-wrpr {margin: 15px 0 0; min-height: 132px;}" // with famepoints 156px + ".reg-RUS .b-profile-wrpr {min-height: 135px;}" + ".b-profile-wrpr td {font-weight: bold; line-height: 133%;}" + ".b-profile-wrpr table a {background: url('/static/3.13.0.2.1/common/css/scss/context-menu/img/arrow.png') no-repeat 0 2px; color: #CACBCC; padding: 0 0 0 10px;}" + ".b-profile-wrpr table a:hover {background: url('/static/3.13.0.2.1/common/css/scss/context-menu/img/arrow.png') no-repeat -244px 2px; color: #FFFFFF;}" + ".b-profile-header {position: absolute; right: 0; top: 0;}" + ".b-scriptlink {"+input_background+" border-left: 1px solid #000000; border-right: 1px solid #000000; display: inline-block; text-align: center; padding: 7px 0 6px; width: 199px;}" + ".b-ratingsClip {display: inline-block;}" + ".b-ratingsButton {"+input_background+" border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; padding: 7px 7px 6px;}" + ".b-ratingsButton:hover {background-color: #282828; cursor: pointer;}" + ".b-profile-error {background: rgba(204,0,0,0.15); border: 1px solid #510000; box-shadow: 0 0 3px #733232; color: #CACBCC; display: none; margin: 0 3px -6px 0; overflow: hidden; padding: 3px; text-align: center; text-overflow: ellipsis; white-space: nowrap; width: 220px;}" + ".b-profile-error:hover {width: auto;}" // profile player rules + ".b-profile-name {float: none; margin: 0; max-width: 370px;}" + ".b-profile-name table {font-family: Arial;}" + ".b-profile-name td:first-child {white-space: nowrap;}" + ".reg-RUS .b-profile-name td:first-child {width: 120px;}" + ".reg-KR .b-profile-name td:first-child {width: 80px;}" + ".b-header-h1__profile {margin: 0; padding: 0 0 6px;}" + "body.reg-KR h1, body.reg-KR .b-header-h1 {line-height: 1;}" // profile clan rules + "#js-clan-block-container {left: 385px; position: absolute; top: 25px;}" + ".b-profile-clan {float: none; max-width: 360px; margin: 0;}" + ".b-profile-noclan {float: none; margin: 27px 0 0;}" + ".b-photo {min-height: 54px;}" + "a.b-link-clan, .b-link-clan a {display: inline;}" + ".b-statistic {margin: 0 0 3px;}" + ".b-victory-points {background: none; display: none; margin: 0; padding: 0;}" + ".b-victory-points_container {margin: 0; max-width: 335px;}" + ".b-victory-points_text {display: table-cell; font-size: 13px; margin: 0; padding: 6px 0 0;}" + ".b-victory-points_text br {display: none;}" + ".b-victory-points_text__indent-top {white-space: pre;}" + ".b-victory-points_count {background-position: right center; display: table-cell; font-size: 22px; margin: 0; padding: 0 40px 0 10px;}" + ".b-victory-points_ico { background-image: url('/static/3.13.0.2.1/common/css/scss/content/victory-points/img/victory-points-link.png'); background-position: center center; display: table-cell; float: right; height: 24px; margin: 0 0 0 5px; opacity: 1; width: 30px;}" + ".b-gray-link__arrow {font-size: 12px;}" + "#js-clan-block-container table {font-family: Arial; width: 360px;}" + "#js-clan-block-container td:first-child {white-space: nowrap;}" + ".reg-RUS #js-clan-block-container td:first-child {width: 115px;}" + ".reg-KR #js-clan-block-container td:first-child {width: 70px;}" // profile menu rules + ".b-profile-menu {position: absolute; right: 200px; top: 0;}" + ".b-profile-menu .b-context-menu {width: 149px;}" + ".b-profile-menu .b-context-menu-list__bottomindent {margin-bottom: 30px;}" // sidebar rules + ".l-sidebar {margin: 0; position: absolute; right: 0; top: 25px; width: auto;}" + ".b-context-menu {background: url("+uri_context_menu+") repeat-y; border-right: 1px solid black; margin: 0; width: 200px;}" + ".b-context-menu_wrapper {padding: 10px 0 5px;}" + ".b-context-menu-list {line-height: 16px;}" + ".b-sidebar-widget__comparison {background-color: #000000; border: 1px solid #000000; margin: 0; position: absolute; left: 223px; top: -26px; width: 203px;}" + ".b-sidebar-widget_inner__comparison {display: table; margin: 5px auto; padding: 0;}" + ".js-recruitsation-block {position: absolute; right: -227px; top: 0px; width: 205px;}" + ".b-sidebar-widget_title {margin: 0 0 10px;}" + ".b-sidebar-widget_text {margin: 0 0 5px;}" // userblock wrapper rules + ".b-userblock-wrpr {margin: 0 0 -2px;}" + ".b-user-block {"+box_background+" margin: 0; width: 750px;}" + ".b-head-block {background: url('/static/3.13.0.2.1/common/css/scss/tables/img/th-profile-bg.png') repeat-x; border: 1px solid #000000;}" + ".b-user-block_info {padding: 5px 25px;}" + ".b-personal-link {clear: left; margin: 53px 0 0;}" + ".b-user-block__sparks {background: url('"+dropbox+"/sparks.png') no-repeat 50% 0; width: 100%;}" + ".b-personal-data {min-height: 180px; padding: 0 20px 15px;}" + ".t-personal-data_ico {padding: 82px 5px 0;}" + ".t-personal-data_ico__hitrate {background: url("+uri_pr_hitrate+") no-repeat 50% 50px;}" + ".t-personal-data_ico__tier {background: url("+uri_pr_avgtier+") no-repeat 50% 50px;}" + ".t-personal-data_value {font-size: 28px; line-height: 100%;}" + ".t-personal-data_value.t-personal-data_value__pr {font-size: 36px;}" + ".b-speedometer-body {padding: 20px 50px;}" + ".b-speedometer {width: 33.3333%}" // ratings wrapper rules + ".b-ratings-wrpr {margin: 0 0 40px;}" // see multiple rules + ".b-ratings-info {text-align: center;}" + ".t-ratings-info {table-layout: fixed;}" + ".t-ratings-info th {font-size: 13px; font-weight: bold; line-height: 133%;}" + ".t-ratings-info td {font-family: 'WarHeliosCondCBold','Arial Narrow',arial,sans-serif; font-size: 36px; line-height: 133%}" + ".t-ratings-info .rating-url_nm {background-image: url("+uri_nm_logo+"); background-position: left center; background-repeat: no-repeat; padding: 0 0 0 20px;}" + ".b-ratings-info, .ratings-table {background: inherit; padding: 10px 25px;}" + ".t-table-ratings {width: 100%;}" + ".t-table-ratings td {line-height: 130%; padding: 9px 12px 2px 0; vertical-align: bottom;}" + ".t-table-ratings .td-value {padding-right: 0; text-align: right; white-space: nowrap;}" + ".t-table-ratings .td-number {color: #BABCBF; font-weight: bold; padding-right: 0; text-align: right; width: 70px;}" + ".t-table-ratings .td-center {line-height: 16px; padding: 9px 0 2px; text-align: center;}" + ".t-table-ratings .td-rating-meter {background: url('/static/3.17.0.1/common/css/scss/content/user/img/speedometr-separator.png') no-repeat 50% 100%; padding: 0;}" + ".t-table-ratings .rating-meter {background: url("+uri_rating_meter+") no-repeat; border: 1px solid #252527; border-radius: 3px; height: 3px; margin: 0 7px;}" + ".t-table-ratings .rating-meter-dail_line {background: url("+uri_rating_meter+") no-repeat; box-shadow: 0 0 10px 1px rgba(221, 84, 12, 0.15), 0 0 3px 1px rgba(133, 18, 11, 0.25); height: 3px;}" + ".t-table-ratings .rating-meter-marker {background: url("+uri_rating_meter_marker+") no-repeat; float: right; height: 13px; margin: -5px -2px 0 0; width: 5px;}" + ".t-table-ratings .rating-meter_wn8 {background-position: 0 0;}" + ".t-table-ratings .rating-meter_wn8 .rating-meter-dail_line {background-position: 0 -3px;}" + ".t-table-ratings .rating-meter_wn7 {background-position: 0 -6px;}" + ".t-table-ratings .rating-meter_wn7 .rating-meter-dail_line {background-position: 0 -9px;}" + ".t-table-ratings .rating-meter_eff {background-position: 0 -12px;}" + ".t-table-ratings .rating-meter_eff .rating-meter-dail_line {background-position: 0 -15px;}" + ".wnelink {background: inherit; padding: 5px 25px 5px 0; text-align: right;}" + ".wnelink_info {background-image: url('/static/3.17.0.1/common/css/scss/content/links/img/ico-info.png'), url('/static/3.13.0.2.1/common/css/block/b-link/img/orange_arrow.png'); background-position: 4px 0px, right 0; padding: 0 9px 0 20px;}" + ".wnelink_info:hover {background-position: 4px -17px, right -22px;}" // statistics wrapper rules + ".b-statistics-wrpr {margin: 0 0 30px; overflow: auto;}" + ".b-statistics-wrpr .t-dotted td {line-height: 23px; padding: 0;}" + ".b-statistics-wrpr .t-dotted td.t-dotted_class-ico {line-height: 13px;}" + ".b-statistics-wrpr .t-dotted td.t-dotted_class-ico img {margin: 2px 0 -1px;}" + ".b-result {margin: 0 10px; width: 315px;}" + ".b-result-classes {margin: 0 10px; width: 265px;}" + ".b-result-classes span {color: #606061; display: inline-block; width: 48px;}" + ".t-dotted td {background: url('/static/3.17.0.1/common/css/scss/content/user/img/speedometr-separator.png') no-repeat 50% 100%;}" // cake diagram rules + ".b-diagrams-sector {margin: 0 0 25px;}" + ".b-diagrams-sector h3 {text-align: center;}" + ".b-diagram-block {float: left; margin: 0 9px; width: 300px;}" + ".b-diagram-wrpr {float: none; margin: 0 auto;}" + ".t-dotted.t-dotted__diagram {margin-top: 0px; width: 100%;}" + ".t-dotted_diagram-percent {display: inline-block; width: 40px;}" + ".b-diagram-total {margin: 25px 0 0;}" + ".b-diagram-tiers .js-results {display: inline-block; margin: 0 0 0 30px; text-align: right; width: 14px;}" + ".reg-RUS .b-diagram-tiers .js-results {margin: 0 0 0 15px;}" + ".b-diagram-tiers .t-dotted_diagram-percent {margin: 0 0 0 3px; width: 52px;}" + ".b-diagram-ico_tier {background: url("+uri_tiers+") no-repeat; padding-left: 30px;}" + ".b-diagram-ico_tier-1 {background-position: 4px 1px;}" + ".b-diagram-ico_tier-2 {background-position: 4px -14px;}" + ".b-diagram-ico_tier-3 {background-position: 4px -29px;}" + ".b-diagram-ico_tier-4 {background-position: 4px -45px;}" + ".b-diagram-ico_tier-5 {background-position: 4px -59px;}" + ".b-diagram-ico_tier-6 {background-position: 4px -74px;}" + ".b-diagram-ico_tier-7 {background-position: 4px -89px;}" + ".b-diagram-ico_tier-8 {background-position: 4px -104px;}" + ".b-diagram-ico_tier-9 {background-position: 4px -120px;}" + ".b-diagram-ico_tier-10 {background-position: 4px -134px;}" + ".t-dotted__diagram tr td.t-dotted_diagram-last {width: 0;}" // achievement wrapper rules + ".b-achievements-wrpr {}" // see multiple rules + ".js-short-achievements {margin: 15px 0 30px;}" + ".js-full-achievements {margin: 0 37px 30px;}" + ".reg-KR .js-full-achievements {margin: 0 34px 30px;}" + ".b-achivements {display: table; margin: 0 auto; padding: 0 0 20px;}" + ".b-achivements-head {margin-top: 15px;}" + ".b-achivements_item {display: inline-table; float: inherit; margin: 5px 5px 0;}" + ".js-full-achievements #js-achivement-medalTamadaYoshio {margin-left: 38.5px;}" + ".js-full-achievements #js-achivement-histBattle2_battlefield {margin-left: 245px;}" + ".js-full-achievements #js-achivement-noMansLand {margin-left: 85px;}" + ".js-full-achievements #js-achivement-ironMan {margin-left: 325px;}" // global rating rules + ".b-composite-heading {margin: 20px 0 15px 400px; width: 553px;}" + ".b-profile-ratings-date {margin-top: 1px}" + ".b-profile-item__empty {display: table; margin: 0 auto; text-align: center;}" + ".b-rating-dial__user {margin: 10px 21px 22px;}" + ".b-leadership-info {display: table; margin: 0 auto;}" + ".l-leadership-info-alignment {display: table; margin: 0 auto; text-align: center;}" + ".b-unordered-lists_item {display: table; margin: 4px auto 5px;}" + ".b-profile-link {display: table; margin: 8px auto}" // vehicle table rules + ".b-vehicles-wrpr {margin: 20px 0;}" + ".b-vehicles-header {display: table; margin: 0 auto 15px}" + ".b-profile-vehicles-tankstat {margin: 0; position: absolute; right: 15px;}" + ".b-profile-vehicles-tankstat_link {background-image: url("+uri_nm_logo+"), url('/static/3.13.0.2.1/common/css/block/b-link/img/orange_arrow.png'); background-position: left center, right 0px; padding: 0 9px 0 20px;}" + ".b-profile-vehicles-tankstat_link:hover {background-position: left center, right -22px;}" + ".t-profile__vehicle .t-profile_right {text-align: center;}" + ".t-profile_dropdown-ico .tablesorter-header-inner {display: inherit;}" + ".t-profile_tankstype-prem td {border-top: 2px dashed #212123;}" + ".t-profile_tankstype-prem .b-tankstype-text {color: #FFC363;}" + ".t-profile_tankstype-prem.t-profile_tankstype__empty .b-tankstype-text {color: rgba(255, 195, 99, 0.3);}" + ".t-profile .t-profile_tankstype td {height: 50px; padding: 0; vertical-align: middle;}" + ".b-tankstype-ico {display: table-cell;}" + ".b-tankstype-ico__lighttank {background-position: 0 -114px;}" + ".b-tankstype-ico__mediumtank {background-position: 0 -173px;}" + ".b-tankstype-ico__heavytank {background-position: 0 5px;}" + ".b-tankstype-ico__at-spg {background-position: 0 -232px;}" + ".b-tankstype-ico__spg {background-position: 0 -54px;}" + ".b-tankstype-ico__prem {background-position: 0 -291px;}" + ".b-tankstype-ico__ten {background: none; color: #BBB7AC; font-size: 17px; font-weight: 100; padding: 0 0 3px; text-align: center;}" + ".b-tankstype-text {display: table-cell; height: inherit; vertical-align: middle;}" + ".t-profile .t-profile_tankstype__item td {height: 40px; padding: 0; vertical-align: middle;}" + ".t-profile .t-profile_tankstype__item:hover td {background: rgba(0, 0, 0, 0.04); border-bottom: 1px solid rgba(255, 255, 255, 0); color: #BABCBF;}" + ".b-armory-wrapper {height: inherit; margin: 0; padding: 0; width: 160px;}" + ".b-armory-wrapper .b-armory-level {display: table-cell; font-size: inherit; height: inherit; position: inherit; vertical-align: middle; left: 0; top: 0;}" + ".b-armory-wrapper img.png {height: 64px; margin: -50px 0 0 24px;}" + ".b-name-vehicle {color: #BBB7AC; display: table-cell; height: inherit; vertical-align: middle;}" + ".b-name-vehicle.b-gold-name {color: #FFC363;}" + ".b-name-vehicle.b-red-name {color: #D00900;}" + ".t-profile_dropdown-link {display: inherit;}" + ".js-error-data {text-align: center;}" + ".b-msg-error {display: table; margin: 0 auto;}" + ".b-vehicle-detail_txt {margin: 0 auto 4px; text-align: center; width: 768px;}" + ".b-vehicle-detail_link {display: table; margin: 0 auto;}" + ".b-vehicle-slider {margin: 23px 64px 17px}" + ".b-vehicle-slider_inner {width: 741px;}" + ".b-vehicle-slider_prev {left: -12px;}" + ".b-vehicle-slider_next {right: -12px;}" + ".b-vehicle-minitable {margin: 0 43px; width: 350px;}" + ".b-vehicle-minitable__right {float: left;}" // profile navigator + ".b-profile-nav {text-align: center;}" + ".wrapper-dropdown .b-profile-nav {padding: 7px 0 0; position: absolute; right: 50%;}" + ".b-profile-nav a {background: url('/static/3.17.0.1/common/css/scss/content/links/img/vertical-arrow.png') no-repeat; padding: 2px 10px 0;}" + ".b-profile-nav a#top {background-position: 100% 0px;}" + ".b-profile-nav a#top:hover {background-position: 100% -36px;}" + ".b-profile-nav a#bottom {background-position: 100% -18px;}" + ".b-profile-nav a#bottom:hover {background-position: 100% -54px;}" + ".b-profile-nav span {border-bottom: 1px dashed;}" // multiple usage rules + ".b-ratings-wrpr, .b-achievements-wrpr {background: rgba(0, 0, 0, 0.09); "+box_background+" clear: both; width: 100%;}" + ".b-orange-arrow__heading, .b-profile-ratings_link {margin: 4px 0 0;}" + ".b-vertical-arrow {display: table; margin: 2px auto 0; padding: 2px 10px 0;}" + ""; document.head.appendChild(style); // end style // removing elements var layoutfix_class = document.getElementsByClassName('b-hr-layoutfix'); layoutfix_class[0].parentNode.removeChild(layoutfix_class[0]); layoutfix_class[0].parentNode.removeChild(layoutfix_class[0]); // profile wrapper var profile_div = document.createElement('div'); profile_div.className = "b-profile-wrpr"; profileHead_div = document.createElement('div'); profileHead_div.className = "b-profile-header"; profile_div.appendChild(profileHead_div); profileName_class = document.getElementsByClassName('b-profile-name')[0]; profileName_class.parentNode.insertBefore(profile_div, profileName_class.nextSibling); profile_div.appendChild(profileName_class); // profile header var profileError_div = document.createElement('div'); profileError_div.className = "b-profile-error"; profileHead_div.innerHTML += scriptlink; profileHead_div.insertBefore(profileError_div, profileHead_div.firstElementChild); // background behind profile wrapper var background_div = document.createElement('div'); background_div.className = "b-background"; background_div.innerHTML = ""; profile_div.parentNode.insertBefore(background_div, profile_div); // page navigation var lcontent_class = document.getElementsByClassName('l-content')[0]; dropdown_class = document.getElementsByClassName('wrapper-dropdown')[0]; topNav_div = document.createElement('div'); topNav_div.className = "b-profile-nav"; topNav_div.innerHTML += ""+locale.p01+""; dropdown_class.appendChild(topNav_div); bottomNav_div = document.createElement('div'); bottomNav_div.className = "b-profile-nav"; bottomNav_div.innerHTML += ""+locale.p02+""; lcontent_class.appendChild(bottomNav_div); // getting registration date var dateStamp = document.getElementsByClassName('js-date-format')[0].getAttribute('data-timestamp'), daysPassed = (new Date() - new Date(dateStamp * 1000)) / 1000/60/60/24; profileName_class.lastElementChild.innerHTML += " - "+daysPassed.toFixed(0)+" "+locale.p03+"."; // getting userinfo var nick = document.getElementsByTagName('h1')[0].innerHTML, userid = document.location.href.match(/\/(\d+)/)[1]; // player statistic links var nm_url = nm_host+"/player/"+nm_srv+"/"+nick+"/"+userid; wl_player = nm_player = wn_player = mws_player = fz_player = signature = replays = ""; if (wl_srv !== null) { wl_player = "WoTLabs", signature = ""+locale.p05+""+locale.p06+"" + ""+locale.p07+""; } if (nm_srv !== null) { nm_player = "Noobmeter"; } if (wn_srv !== null) { wn_player = "Wot-news"; } if (mws_srv !== null) { mws_player = "MyWOTStats"; } if (fz_srv !== null) { fz_player = "Feldzug"; } if (wr_srv !== null) { replays = ""+locale.p08+"WoTReplays"; } playerstat = ""+locale.p04+""+wl_player+nm_player+wn_player+""+mws_player+fz_player+""; if (playerstat.length > 66) { profileName_class.innerHTML += ""+playerstat+signature+replays+"
"; } // clan handler caller - clan container is delayed by Wargaming clanHnd(); // move sidebar var sidebar_class = document.getElementsByClassName('l-sidebar')[0]; profile_div.appendChild(sidebar_class); // end profile wrapper // formula calculations and variables // expected tank values v15 with premium tanks up to 0.9.1 var statArr = { "ms-1": { title:"MS-1", tier:1, nation:"RU", type:"LT", frag:2.02, dmg:260.49, spot:1.48, def:1.59, win:59.19 }, "bt-2": { title:"BT-2", tier:2, nation:"RU", type:"LT", frag:1.69, dmg:284.08, spot:2.06, def:1.48, win:59.24 }, "t-26": { title:"T-26", tier:2, nation:"RU", type:"LT", frag:1.71, dmg:287.03, spot:1.41, def:1.74, win:58.82 }, "t-60": { title:"T-60", tier:2, nation:"RU", type:"LT", frag:1.67, dmg:276.30, spot:1.70, def:2.01, win:60.38 }, "tetrarch_ll": { title:"Tetrarch", tier:2, nation:"RU", type:"LT", frag:1.77, dmg:301.94, spot:1.55, def:1.65, win:59.14, prem:1 }, "bt-7": { title:"BT-7", tier:3, nation:"RU", type:"LT", frag:0.89, dmg:221.48, spot:2.10, def:1.16, win:54.33 }, "bt-sv": { title:"BT-SV", tier:3, nation:"RU", type:"LT", frag:1.70, dmg:354.41, spot:2.22, def:2.02, win:60.06, prem:1 }, "ltp": { title:"LTP", tier:3, nation:"RU", type:"LT", frag:1.51, dmg:321.48, spot:1.50, def:1.70, win:58.47, prem:1 }, "m3_stuart_ll": { title:"M3 Light", tier:3, nation:"RU", type:"LT", frag:1.02, dmg:228.21, spot:1.71, def:1.12, win:53.18, prem:1 }, "t-127": { title:"T-127", tier:3, nation:"RU", type:"LT", frag:1.83, dmg:380.83, spot:1.81, def:1.87, win:60.31, prem:1 }, "t-46": { title:"T-46", tier:3, nation:"RU", type:"LT", frag:1.14, dmg:273.94, spot:1.46, def:1.02, win:56.04 }, "t-70": { title:"T-70", tier:3, nation:"RU", type:"LT", frag:1.50, dmg:352.94, spot:1.53, def:1.76, win:58.92 }, "a-20": { title:"A-20", tier:4, nation:"RU", type:"LT", frag:0.67, dmg:261.58, spot:2.21, def:0.81, win:54.19 }, "t-50": { title:"T-50", tier:4, nation:"RU", type:"LT", frag:0.80, dmg:314.03, spot:2.78, def:0.66, win:55.89 }, "t80": { title:"T-80", tier:4, nation:"RU", type:"LT", frag:1.16, dmg:391.82, spot:1.78, def:1.60, win:58.82 }, "valentine_ll": { title:"Valentine II", tier:4, nation:"RU", type:"LT", frag:1.48, dmg:407.93, spot:1.57, def:1.72, win:56.88, prem:1 }, "mt25": { title:"MT-25", tier:6, nation:"RU", type:"LT", frag:0.57, dmg:370.67, spot:3.85, def:0.66, win:54.06 }, "a-32": { title:"A-32", tier:4, nation:"RU", type:"MT", frag:0.86, dmg:272.18, spot:2.72, def:0.49, win:54.36, prem:1 }, "t-28": { title:"T-28", tier:4, nation:"RU", type:"MT", frag:1.11, dmg:413.94, spot:1.26, def:0.93, win:55.88 }, "matilda_ii_ll": { title:"Matilda IV", tier:5, nation:"RU", type:"MT", frag:1.38, dmg:578.12, spot:1.18, def:1.48, win:57.59, prem:1 }, "t-34": { title:"T-34", tier:5, nation:"RU", type:"MT", frag:1.12, dmg:520.70, spot:1.46, def:1.11, win:55.07 }, "a43": { title:"A-43", tier:6, nation:"RU", type:"MT", frag:1.08, dmg:705.39, spot:2.09, def:1.06, win:54.80 }, "t-34-85": { title:"T-34-85", tier:6, nation:"RU", type:"MT", frag:1.03, dmg:734.33, spot:1.45, def:0.99, win:54.41 }, "a44": { title:"A-44", tier:7, nation:"RU", type:"MT", frag:1.02, dmg:961.65, spot:1.77, def:0.86, win:53.40 }, "kv-13": { title:"KV-13", tier:7, nation:"RU", type:"MT", frag:0.84, dmg:762.64, spot:1.57, def:0.89, win:53.31 }, "t-43": { title:"T-43", tier:7, nation:"RU", type:"MT", frag:0.95, dmg:876.38, spot:1.59, def:1.03, win:54.00 }, "object416": { title:"Object 416", tier:8, nation:"RU", type:"MT", frag:1.02, dmg:1250.04, spot:1.50, def:0.96, win:52.47 }, "t-44": { title:"T-44", tier:8, nation:"RU", type:"MT", frag:0.87, dmg:1051.45, spot:1.70, def:0.93, win:53.37 }, "r104_object_430_ii": { title:"Object 430 Version II", tier:9, nation:"RU", type:"MT", frag:1.03, dmg:1550.82, spot:1.64, def:0.86, win:53.94 }, "t-54": { title:"T-54", tier:9, nation:"RU", type:"MT", frag:1.01, dmg:1529.30, spot:1.86, def:0.86, win:52.33 }, "object_140": { title:"Object 140", tier:10, nation:"RU", type:"MT", frag:0.98, dmg:1771.67, spot:1.76, def:0.81, win:49.88 }, "object_430": { title:"Object 430", tier:10, nation:"RU", type:"MT", frag:0.98, dmg:1730.31, spot:1.73, def:0.81, win:51.50 }, "t62a": { title:"T-62A", tier:10, nation:"RU", type:"MT", frag:0.93, dmg:1676.95, spot:1.67, def:0.74, win:49.02 }, "churchill_ll": { title:"Churchill III", tier:5, nation:"RU", type:"HT", frag:1.28, dmg:608.36, spot:1.19, def:1.34, win:54.75, prem:1 }, "kv1": { title:"KV-1", tier:5, nation:"RU", type:"HT", frag:1.22, dmg:637.26, spot:0.87, def:1.03, win:54.12 }, "kv-220_action": { title:"KV-220", tier:5, nation:"RU", type:"HT", frag:1.47, dmg:677.60, spot:1.39, def:1.28, win:60.18, prem:1 }, "kv-1s": { title:"KV-1S", tier:6, nation:"RU", type:"HT", frag:1.24, dmg:942.13, spot:1.16, def:0.80, win:55.55 }, "kv2": { title:"KV-2", tier:6, nation:"RU", type:"HT", frag:1.15, dmg:881.45, spot:0.74, def:0.75, win:54.33 }, "t150": { title:"T-150", tier:6, nation:"RU", type:"HT", frag:1.03, dmg:799.51, spot:0.89, def:0.79, win:53.63 }, "is": { title:"IS", tier:7, nation:"RU", type:"HT", frag:1.04, dmg:1070.70, spot:1.07, def:0.79, win:53.09 }, "kv-3": { title:"KV-3", tier:7, nation:"RU", type:"HT", frag:1.06, dmg:1122.86, spot:0.89, def:0.79, win:53.63 }, "is-3": { title:"IS-3", tier:8, nation:"RU", type:"HT", frag:0.96, dmg:1336.24, spot:1.06, def:0.78, win:51.88 }, "object252": { title:"IS-6", tier:8, nation:"RU", type:"HT", frag:1.13, dmg:1425.25, spot:1.19, def:0.85, win:53.51, prem:1 }, "kv4": { title:"KV-4", tier:8, nation:"RU", type:"HT", frag:0.84, dmg:1211.80, spot:0.85, def:0.73, win:51.89 }, "kv-5": { title:"KV-5", tier:8, nation:"RU", type:"HT", frag:0.99, dmg:1252.50, spot:1.11, def:0.87, win:51.19, prem:1 }, "is8": { title:"IS-8", tier:9, nation:"RU", type:"HT", frag:0.91, dmg:1548.29, spot:1.15, def:0.69, win:49.96 }, "st_i": { title:"ST-I", tier:9, nation:"RU", type:"HT", frag:0.95, dmg:1668.74, spot:0.97, def:0.67, win:52.18 }, "is-4": { title:"IS-4", tier:10, nation:"RU", type:"HT", frag:0.90, dmg:1831.33, spot:1.12, def:0.78, win:49.11 }, "is-7": { title:"IS-7", tier:10, nation:"RU", type:"HT", frag:0.86, dmg:1743.98, spot:1.22, def:0.62, win:49.04 }, "at-1": { title:"AT-1", tier:2, nation:"RU", type:"TD", frag:1.80, dmg:303.74, spot:0.46, def:1.54, win:58.41 }, "su-76": { title:"SU-76", tier:3, nation:"RU", type:"TD", frag:1.58, dmg:395.14, spot:0.95, def:1.54, win:57.29 }, "gaz-74b": { title:"SU-85B", tier:4, nation:"RU", type:"TD", frag:1.51, dmg:556.05, spot:1.10, def:1.43, win:57.56 }, "su-85": { title:"SU-85", tier:5, nation:"RU", type:"TD", frag:1.20, dmg:597.48, spot:0.56, def:1.20, win:54.11 }, "su_85i": { title:"SU-85I", tier:5, nation:"RU", type:"TD", frag:1.51, dmg:686.76, spot:0.86, def:1.58, win:55.97, prem:1 }, "su-100": { title:"SU-100", tier:6, nation:"RU", type:"TD", frag:1.25, dmg:881.77, spot:0.83, def:1.14, win:54.56 }, "su100y": { title:"SU-100Y", tier:6, nation:"RU", type:"TD", frag:1.30, dmg:937.01, spot:0.63, def:0.89, win:55.27, prem:1 }, "su100m1": { title:"SU-100M1", tier:7, nation:"RU", type:"TD", frag:1.01, dmg:1023.65, spot:0.88, def:1.16, win:52.75 }, "su122_44": { title:"SU-122-44", tier:7, nation:"RU", type:"TD", frag:1.29, dmg:1198.46, spot:0.83, def:1.01, win:54.55, prem:1 }, "su-152": { title:"SU-152", tier:7, nation:"RU", type:"TD", frag:1.10, dmg:1089.85, spot:0.55, def:0.86, win:52.62 }, "isu-152": { title:"ISU-152", tier:8, nation:"RU", type:"TD", frag:1.20, dmg:1585.76, spot:0.58, def:0.79, win:51.40 }, "su-101": { title:"SU-101", tier:8, nation:"RU", type:"TD", frag:1.00, dmg:1257.14, spot:0.97, def:1.04, win:50.15 }, "object_704": { title:"Object 704", tier:9, nation:"RU", type:"TD", frag:1.25, dmg:2044.01, spot:0.71, def:0.80, win:51.31 }, "su122_54": { title:"SU-122-54", tier:9, nation:"RU", type:"TD", frag:0.98, dmg:1542.26, spot:0.95, def:0.89, win:49.90 }, "object268": { title:"Object 263", tier:10, nation:"RU", type:"TD", frag:1.11, dmg:2150.69, spot:0.99, def:0.84, win:50.19 }, "object263": { title:"Object 268", tier:10, nation:"RU", type:"TD", frag:1.19, dmg:2314.62, spot:0.87, def:0.75, win:49.28 }, "su-18": { title:"SU-18", tier:2, nation:"RU", type:"SP", frag:1.33, dmg:251.84, spot:0.14, def:1.85, win:53.23 }, "su-26": { title:"SU-26", tier:3, nation:"RU", type:"SP", frag:1.57, dmg:592.65, spot:0.13, def:2.08, win:57.74 }, "su-5": { title:"SU-5", tier:4, nation:"RU", type:"SP", frag:1.11, dmg:646.72, spot:0.10, def:1.65, win:52.40 }, "su122a": { title:"SU-122A", tier:5, nation:"RU", type:"SP", frag:1.05, dmg:604.47, spot:0.10, def:1.38, win:53.28 }, "su-8": { title:"SU-8", tier:6, nation:"RU", type:"SP", frag:1.11, dmg:1121.02, spot:0.07, def:1.29, win:51.78 }, "s-51": { title:"S-51", tier:7, nation:"RU", type:"SP", frag:0.92, dmg:1284.59, spot:0.05, def:0.79, win:49.64 }, "su14_1": { title:"SU-14-1", tier:7, nation:"RU", type:"SP", frag:0.95, dmg:1130.47, spot:0.04, def:0.83, win:51.41 }, "su-14": { title:"SU-14-2", tier:8, nation:"RU", type:"SP", frag:0.99, dmg:1410.30, spot:0.02, def:0.71, win:49.92 }, "object_212": { title:"212A", tier:9, nation:"RU", type:"SP", frag:0.98, dmg:1639.41, spot:0.03, def:0.65, win:49.02 }, "object_261": { title:"Object 261", tier:10, nation:"RU", type:"SP", frag:0.99, dmg:1845.79, spot:0.05, def:0.82, win:47.71 }, "ltraktor": { title:"Leichttraktor", tier:1, nation:"DE", type:"LT", frag:2.03, dmg:269.00, spot:2.25, def:1.55, win:59.76 }, "pz35t": { title:"Pz.Kpfw. 35 (t)", tier:2, nation:"DE", type:"LT", frag:1.75, dmg:293.24, spot:1.99, def:1.73, win:59.94 }, "h39_captured": { title:"Pz.Kpfw. 38H 735 (f)", tier:2, nation:"DE", type:"LT", frag:2.12, dmg:346.62, spot:1.93, def:2.63, win:56.76, prem:1 }, "pzi": { title:"Pz.Kpfw. I", tier:2, nation:"DE", type:"LT", frag:1.57, dmg:262.15, spot:2.10, def:1.49, win:58.92 }, "pzii": { title:"Pz.Kpfw. II", tier:2, nation:"DE", type:"LT", frag:1.57, dmg:262.15, spot:2.10, def:1.49, win:58.92 }, "pz38t": { title:"Pz.Kpfw. 38 (t)", tier:3, nation:"DE", type:"LT", frag:1.59, dmg:373.14, spot:1.59, def:1.48, win:59.32 }, "pzi_ausf_c": { title:"Pz.Kpfw. I Ausf. C", tier:3, nation:"DE", type:"LT", frag:1.23, dmg:259.68, spot:3.15, def:1.25, win:57.44 }, "pz_ii_ausfg": { title:"Pz.Kpfw. II Ausf. G", tier:3, nation:"DE", type:"LT", frag:1.10, dmg:280.98, spot:1.89, def:1.41, win:58.42 }, "pzii_j": { title:"Pz.Kpfw. II Ausf. J", tier:3, nation:"DE", type:"LT", frag:2.06, dmg:388.78, spot:2.03, def:2.30, win:72.22, prem:1 }, "pziii_a": { title:"Pz.Kpfw. III Ausf. A", tier:3, nation:"DE", type:"LT", frag:1.17, dmg:270.21, spot:1.85, def:0.90, win:56.00 }, "t-15": { title:"T-15", tier:3, nation:"DE", type:"LT", frag:1.24, dmg:283.34, spot:3.08, def:1.57, win:60.09, prem:1 }, "pz38_na": { title:"Pz.Kpfw. 38 (t) n.A.", tier:4, nation:"DE", type:"LT", frag:0.78, dmg:281.04, spot:2.23, def:0.85, win:55.60 }, "pzii_luchs": { title:"Pz.Kpfw. II Luchs", tier:4, nation:"DE", type:"LT", frag:1.07, dmg:326.50, spot:2.73, def:1.12, win:57.80 }, "vk1602": { title:"VK 16.02 Leopard", tier:5, nation:"DE", type:"LT", frag:0.66, dmg:344.00, spot:2.73, def:0.81, win:54.05 }, "vk2801": { title:"VK 28.01", tier:6, nation:"DE", type:"LT", frag:0.71, dmg:555.76, spot:2.77, def:0.57, win:53.21 }, "auf_panther": { title:"Aufklärungspanzer Panther", tier:7, nation:"DE", type:"LT", frag:0.62, dmg:684.74, spot:2.16, def:0.75, win:52.29 }, "pz_iv_ausfa": { title:"Pz.Kpfw. IV Ausf. A", tier:3, nation:"DE", type:"MT", frag:1.46, dmg:326.77, spot:1.33, def:1.32, win:59.72 }, "s35_captured": { title:"Pz.Kpfw. S35 739 (f)", tier:3, nation:"DE", type:"MT", frag:1.78, dmg:405.35, spot:1.57, def:1.84, win:61.74, prem:1 }, "pziii_ausfj": { title:"Pz.Kpfw. III", tier:4, nation:"DE", type:"MT", frag:1.05, dmg:349.47, spot:1.98, def:1.01, win:56.83 }, "pz_iv_ausfd": { title:"Pz.Kpfw. IV Ausf. D", tier:4, nation:"DE", type:"MT", frag:1.04, dmg:401.85, spot:1.28, def:1.11, win:53.44 }, "vk2001db": { title:"VK 20.01 (D)", tier:4, nation:"DE", type:"MT", frag:1.28, dmg:422.57, spot:1.77, def:1.22, win:58.61 }, "pziii_iv": { title:"Pz.Kpfw. III/IV", tier:5, nation:"DE", type:"MT", frag:0.93, dmg:439.57, spot:1.59, def:0.91, win:53.01 }, "pziv": { title:"Pz.Kpfw. IV", tier:5, nation:"DE", type:"MT", frag:1.22, dmg:582.54, spot:1.36, def:0.96, win:54.99 }, "pz_iv_ausfh": { title:"Pz.Kpfw. IV Ausf. H", tier:5, nation:"DE", type:"MT", frag:1.43, dmg:688.54, spot:1.44, def:1.02, win:56.97 }, "pziv_hydro": { title:"Pz.Kpfw. IV hydrostat.", tier:5, nation:"DE", type:"MT", frag:1.30, dmg:657.35, spot:1.33, def:1.12, win:51.47, prem:1 }, "t-25": { title:"T-25", tier:5, nation:"DE", type:"MT", frag:1.19, dmg:579.89, spot:1.58, def:1.22, win:55.75, prem:1 }, "pziv_schmalturm": { title:"Pz.Kpfw. IV Schmalturm", tier:6, nation:"DE", type:"MT", frag:1.03, dmg:764.85, spot:1.10, def:1.35, win:52.30, prem:1 }, "pzv_pziv": { title:"Pz.Kpfw. V/IV", tier:6, nation:"DE", type:"MT", frag:1.03, dmg:764.85, spot:1.10, def:1.35, win:52.30, prem:1 }, "vk3002db_v1": { title:"VK 30.01 (D)", tier:6, nation:"DE", type:"MT", frag:1.08, dmg:755.21, spot:1.68, def:1.15, win:54.63 }, "vk3001p": { title:"VK 30.01 (P)", tier:6, nation:"DE", type:"MT", frag:0.92, dmg:668.93, spot:1.28, def:0.85, win:52.47 }, "vk3002m": { title:"VK 30.02 (M)", tier:6, nation:"DE", type:"MT", frag:1.03, dmg:756.08, spot:1.44, def:1.06, win:52.30 }, "pzv": { title:"Panther", tier:7, nation:"DE", type:"MT", frag:0.85, dmg:864.24, spot:1.19, def:1.20, win:52.18 }, "panther_m10": { title:"Panther/M10", tier:7, nation:"DE", type:"MT", frag:0.95, dmg:888.02, spot:1.28, def:1.27, win:52.49, prem:1 }, "vk3002db": { title:"VK 30.02 (D)", tier:7, nation:"DE", type:"MT", frag:0.92, dmg:846.67, spot:1.58, def:1.00, win:52.21 }, "indien_panzer": { title:"Indien-Panzer", tier:8, nation:"DE", type:"MT", frag:0.88, dmg:1174.83, spot:1.24, def:1.05, win:50.43 }, "panther_ii": { title:"Panther II", tier:8, nation:"DE", type:"MT", frag:0.84, dmg:1086.12, spot:1.38, def:0.95, win:52.18 }, "e-50": { title:"E 50", tier:9, nation:"DE", type:"MT", frag:0.92, dmg:1490.45, spot:1.48, def:0.71, win:50.21 }, "pro_ag_a": { title:"Leopard Prototyp A", tier:9, nation:"DE", type:"MT", frag:0.87, dmg:1465.69, spot:1.42, def:0.93, win:48.89 }, "e50_ausf_m": { title:"E 50 Ausf. M", tier:10, nation:"DE", type:"MT", frag:0.90, dmg:1765.44, spot:1.47, def:0.70, win:48.26 }, "leopard1": { title:"Leopard 1", tier:10, nation:"DE", type:"MT", frag:0.94, dmg:1785.14, spot:1.69, def:0.89, win:47.54 }, "dw_ii": { title:"Durchbruchswagen 2", tier:4, nation:"DE", type:"HT", frag:1.09, dmg:380.27, spot:0.99, def:1.09, win:52.74 }, "b-1bis_captured": { title:"Pz.Kpfw. B2 740 (f)", tier:4, nation:"DE", type:"HT", frag:1.83, dmg:523.51, spot:1.70, def:1.82, win:60.98, prem:1 }, "vk3001h": { title:"VK 30.01 (H)", tier:5, nation:"DE", type:"HT", frag:1.07, dmg:677.84, spot:1.32, def:1.11, win:53.24 }, "vk3601h": { title:"VK 36.01 (H)", tier:6, nation:"DE", type:"HT", frag:1.21, dmg:880.11, spot:1.31, def:1.21, win:55.63 }, "pzvi_tiger_p": { title:"Tiger (P)", tier:7, nation:"DE", type:"HT", frag:0.97, dmg:1094.33, spot:0.99, def:1.04, win:53.17 }, "pzvi": { title:"Tiger I", tier:7, nation:"DE", type:"HT", frag:0.96, dmg:1063.86, spot:0.97, def:0.99, win:51.98 }, "lowe": { title:"Löwe", tier:8, nation:"DE", type:"HT", frag:0.83, dmg:1227.73, spot:0.88, def:0.86, win:49.09, prem:1 }, "pzvib_tiger_ii": { title:"Tiger II", tier:8, nation:"DE", type:"HT", frag:0.88, dmg:1250.14, spot:1.01, def:0.84, win:50.53 }, "vk4502a": { title:"VK 45.02 (P) Ausf. A", tier:8, nation:"DE", type:"HT", frag:0.90, dmg:1231.93, spot:1.28, def:0.85, win:50.90 }, "e-75": { title:"E 75", tier:9, nation:"DE", type:"HT", frag:0.93, dmg:1603.93, spot:1.08, def:0.70, win:50.61 }, "vk4502p": { title:"VK 45.02 (P) Ausf. B", tier:9, nation:"DE", type:"HT", frag:0.86, dmg:1495.22, spot:0.95, def:0.64, win:49.18 }, "e-100": { title:"E 100", tier:10, nation:"DE", type:"HT", frag:0.94, dmg:1923.37, spot:1.03, def:0.53, win:49.58 }, "maus": { title:"Maus", tier:10, nation:"DE", type:"HT", frag:0.83, dmg:1722.76, spot:0.95, def:0.68, win:49.07 }, "vk7201": { title:"VK 72.01 (K)", tier:10, nation:"DE", type:"HT", frag:0.95, dmg:1938.47, spot:1.14, def:0.45, win:49.34, prem:1 }, "panzerjager_i": { title:"Panzerjäger I", tier:2, nation:"DE", type:"TD", frag:2.02, dmg:330.06, spot:1.13, def:1.64, win:59.19 }, "g20_marder_ii": { title:"Marder II", tier:3, nation:"DE", type:"TD", frag:1.47, dmg:412.34, spot:1.09, def:1.45, win:58.56 }, "hetzer": { title:"Hetzer", tier:4, nation:"DE", type:"TD", frag:1.58, dmg:504.72, spot:0.63, def:1.18, win:57.03 }, "marder_iii": { title:"Marder 38T", tier:4, nation:"DE", type:"TD", frag:1.50, dmg:565.11, spot:0.99, def:1.58, win:56.86 }, "g101_stug_iii": { title:"StuG III Ausf. B", tier:4, nation:"DE", type:"TD", frag:1.53, dmg:508.71, spot:0.82, def:1.32, win:56.88 }, "pz_sfl_ivc": { title:"Pz.Sfl. IVc", tier:5, nation:"DE", type:"TD", frag:1.27, dmg:666.68, spot:0.83, def:1.18, win:53.10 }, "stug_40_ausfg": { title:"StuG III Ausf. G", tier:5, nation:"DE", type:"TD", frag:1.20, dmg:605.88, spot:0.75, def:1.32, win:53.45 }, "dickermax": { title:"Dicker Max", tier:6, nation:"DE", type:"TD", frag:1.17, dmg:872.81, spot:0.82, def:1.19, win:52.26, prem:1 }, "jagdpziv": { title:"Jagdpanzer IV", tier:6, nation:"DE", type:"TD", frag:1.06, dmg:739.99, spot:0.76, def:1.19, win:52.03 }, "nashorn": { title:"Nashorn", tier:6, nation:"DE", type:"TD", frag:1.23, dmg:955.73, spot:0.73, def:1.25, win:51.96 }, "e-25": { title:"E 25", tier:7, nation:"DE", type:"TD", frag:1.34, dmg:1079.32, spot:1.64, def:1.73, win:51.92, prem:1 }, "jagdpanther": { title:"Jagdpanther", tier:7, nation:"DE", type:"TD", frag:1.08, dmg:1108.01, spot:0.74, def:1.03, win:52.40 }, "sturer_emil": { title:"Pz.Sfl. V", tier:7, nation:"DE", type:"TD", frag:1.10, dmg:1116.95, spot:0.55, def:0.99, win:50.82 }, "jagdtiger_sdkfz_185": { title:"8.8 cm Pak 43 Jagdtiger", tier:8, nation:"DE", type:"TD", frag:1.00, dmg:1326.40, spot:0.78, def:1.16, win:50.03, prem:1 }, "ferdinand": { title:"Ferdinand", tier:8, nation:"DE", type:"TD", frag:1.09, dmg:1477.17, spot:0.63, def:0.94, win:50.48 }, "jagdpantherii": { title:"Jagdpanther II", tier:8, nation:"DE", type:"TD", frag:1.14, dmg:1540.19, spot:0.81, def:0.98, win:50.97 }, "rhb_waffentrager": { title:"Rhm.-Borsig Waffenträger", tier:8, nation:"DE", type:"TD", frag:1.33, dmg:1755.03, spot:0.66, def:1.14, win:52.38 }, "jagdtiger": { title:"Jagdtiger", tier:9, nation:"DE", type:"TD", frag:1.08, dmg:1824.78, spot:0.66, def:0.80, win:49.81 }, "waffentrager_iv": { title:"Waffenträger auf Pz. IV", tier:9, nation:"DE", type:"TD", frag:1.20, dmg:1971.69, spot:0.70, def:0.92, win:50.56 }, "jagdpz_e100": { title:"Jagdpanzer E 100", tier:10, nation:"DE", type:"TD", frag:1.07, dmg:2129.31, spot:0.67, def:0.52, win:48.45 }, "waffentrager_e100": { title:"Waffenträger auf E 100", tier:10, nation:"DE", type:"TD", frag:1.53, dmg:2562.33, spot:0.55, def:0.84, win:50.50 }, "gw_mk_vie": { title:"G.Pz. Mk. VI (e)", tier:2, nation:"DE", type:"SP", frag:1.33, dmg:210.72, spot:0.22, def:2.25, win:54.07 }, "bison_i": { title:"Sturmpanzer I Bison", tier:3, nation:"DE", type:"SP", frag:1.26, dmg:389.39, spot:0.20, def:1.57, win:56.38 }, "wespe": { title:"Wespe", tier:3, nation:"DE", type:"SP", frag:1.13, dmg:423.55, spot:0.14, def:1.77, win:52.92 }, "pz_sfl_ivb": { title:"Pz.Sfl. IVb", tier:4, nation:"DE", type:"SP", frag:1.22, dmg:473.73, spot:0.11, def:1.73, win:55.05 }, "sturmpanzer_ii": { title:"Sturmpanzer II", tier:4, nation:"DE", type:"SP", frag:1.09, dmg:435.82, spot:0.17, def:1.69, win:53.34 }, "grille": { title:"Grille", tier:5, nation:"DE", type:"SP", frag:1.08, dmg:655.14, spot:0.11, def:1.57, win:51.95 }, "hummel": { title:"Hummel", tier:6, nation:"DE", type:"SP", frag:1.02, dmg:989.07, spot:0.08, def:1.30, win:50.27 }, "g_panther": { title:"G.W. Panther", tier:7, nation:"DE", type:"SP", frag:0.98, dmg:1294.34, spot:0.05, def:1.01, win:49.82 }, "gw_tiger_p": { title:"G.W. Tiger (P)", tier:8, nation:"DE", type:"SP", frag:0.91, dmg:1326.46, spot:0.04, def:0.70, win:49.74 }, "g_tiger": { title:"G.W. Tiger", tier:9, nation:"DE", type:"SP", frag:0.92, dmg:1559.02, spot:0.04, def:0.62, win:48.51 }, "g_e": { title:"G.W. E 100", tier:10, nation:"DE", type:"SP", frag:0.95, dmg:1792.45, spot:0.04, def:0.61, win:47.61 }, "t1_cunningham": { title:"T1 Cunningham", tier:1, nation:"US", type:"LT", frag:1.93, dmg:238.67, spot:2.34, def:1.55, win:60.54 }, "m2_lt": { title:"M2 Light Tank", tier:2, nation:"US", type:"LT", frag:1.59, dmg:267.08, spot:2.72, def:1.49, win:59.93 }, "t1_e6": { title:"T1E6", tier:2, nation:"US", type:"LT", frag:1.37, dmg:233.51, spot:1.77, def:1.47, win:57.31, prem:1 }, "t2_lt": { title:"T2 Light Tank", tier:2, nation:"US", type:"LT", frag:1.50, dmg:241.50, spot:2.70, def:1.42, win:59.46, prem:1 }, "t7_combat_car": { title:"T7 Combat Car", tier:2, nation:"US", type:"LT", frag:1.37, dmg:211.35, spot:1.41, def:0.54, win:64.60, prem:1 }, "m22_locust": { title:"M22 Locust", tier:3, nation:"US", type:"LT", frag:1.19, dmg:280.80, spot:2.75, def:1.45, win:57.73, prem:1 }, "m3_stuart": { title:"M3 Stuart", tier:3, nation:"US", type:"LT", frag:1.07, dmg:249.08, spot:2.48, def:1.27, win:56.87 }, "m5_stuart": { title:"M5 Stuart", tier:4, nation:"US", type:"LT", frag:0.93, dmg:316.39, spot:2.69, def:0.97, win:57.30 }, "m24_chaffee": { title:"M24 Chaffee", tier:5, nation:"US", type:"LT", frag:0.63, dmg:512.65, spot:2.73, def:0.73, win:53.41 }, "t21": { title:"T21", tier:6, nation:"US", type:"LT", frag:0.59, dmg:485.88, spot:2.46, def:0.66, win:53.48 }, "t71": { title:"T71", tier:7, nation:"US", type:"LT", frag:0.73, dmg:761.22, spot:2.65, def:0.73, win:53.13 }, "t2_med": { title:"T2 Medium Tank", tier:2, nation:"US", type:"MT", frag:1.66, dmg:283.59, spot:1.78, def:1.27, win:59.76 }, "m2_med": { title:"M2 Medium Tank", tier:3, nation:"US", type:"MT", frag:1.36, dmg:299.57, spot:1.52, def:1.09, win:55.88 }, "m3_grant": { title:"M3 Lee", tier:4, nation:"US", type:"MT", frag:1.05, dmg:358.15, spot:0.84, def:0.89, win:54.21 }, "m4_sherman": { title:"M4 Sherman", tier:5, nation:"US", type:"MT", frag:1.62, dmg:738.27, spot:1.59, def:1.15, win:59.31 }, "m4a2e4": { title:"M4A2E4 Sherman", tier:5, nation:"US", type:"MT", frag:0.95, dmg:417.33, spot:1.48, def:0.85, win:53.02, prem:1 }, "m7_med": { title:"M7", tier:5, nation:"US", type:"MT", frag:0.96, dmg:430.98, spot:2.17, def:1.03, win:54.75 }, "ram-ii": { title:"Ram II", tier:5, nation:"US", type:"MT", frag:1.20, dmg:544.55, spot:1.46, def:1.20, win:56.90, prem:1 }, "sherman_jumbo": { title:"M4A3E2 Sherman Jumbo", tier:6, nation:"US", type:"MT", frag:1.14, dmg:790.63, spot:1.24, def:1.19, win:55.01 }, "m4a3e8_sherman": { title:"M4A3E8 Sherman", tier:6, nation:"US", type:"MT", frag:1.01, dmg:688.43, spot:1.54, def:1.03, win:54.41 }, "t20": { title:"T20", tier:7, nation:"US", type:"MT", frag:0.94, dmg:935.23, spot:1.75, def:1.03, win:53.74 }, "t23e3": { title:"T23E3", tier:7, nation:"US", type:"MT", frag:0.84, dmg:762.64, spot:1.57, def:0.89, win:53.31, prem:1 }, "pershing": { title:"M26 Pershing", tier:8, nation:"US", type:"MT", frag:0.89, dmg:1127.04, spot:1.62, def:1.02, win:52.27 }, "t26_e4_superpershing": { title:"T26E4 SuperPershing", tier:8, nation:"US", type:"MT", frag:0.86, dmg:1120.49, spot:0.95, def:1.01, win:51.50, prem:1 }, "t69": { title:"T69", tier:8, nation:"US", type:"MT", frag:1.12, dmg:1367.67, spot:1.35, def:1.23, win:53.65 }, "m46_patton": { title:"M46 Patton", tier:9, nation:"US", type:"MT", frag:0.92, dmg:1455.97, spot:1.71, def:0.74, win:50.85 }, "t54e1": { title:"T54E1", tier:9, nation:"US", type:"MT", frag:1.13, dmg:1688.03, spot:1.06, def:0.78, win:51.14 }, "m48a1": { title:"M48A1 Patton", tier:10, nation:"US", type:"MT", frag:0.90, dmg:1708.05, spot:1.64, def:0.64, win:48.19 }, "m60": { title:"M60", tier:10, nation:"US", type:"MT", frag:0.84, dmg:1698.03, spot:1.54, def:0.73, win:46.44, prem:1 }, "t1_hvy": { title:"T1 Heavy Tank", tier:5, nation:"US", type:"HT", frag:1.24, dmg:636.71, spot:1.19, def:1.13, win:54.75 }, "t14": { title:"T14", tier:5, nation:"US", type:"HT", frag:1.34, dmg:598.77, spot:1.54, def:1.20, win:55.36, prem:1 }, "m6": { title:"M6", tier:6, nation:"US", type:"HT", frag:1.05, dmg:832.45, spot:1.07, def:0.87, win:53.07 }, "t29": { title:"T29", tier:7, nation:"US", type:"HT", frag:1.11, dmg:1237.73, spot:1.14, def:0.99, win:54.63 }, "m6a2e1": { title:"M6A2E1", tier:8, nation:"US", type:"HT", frag:0.86, dmg:1122.09, spot:1.19, def:0.79, win:47.33, prem:1 }, "t32": { title:"T32", tier:8, nation:"US", type:"HT", frag:0.94, dmg:1310.27, spot:1.25, def:0.95, win:52.44 }, "t34_hvy": { title:"T34", tier:8, nation:"US", type:"HT", frag:0.86, dmg:1305.28, spot:0.84, def:0.71, win:50.49, prem:1 }, "m103": { title:"M103", tier:9, nation:"US", type:"HT", frag:0.90, dmg:1571.87, spot:1.13, def:0.70, win:49.73 }, "t110": { title:"T110E5", tier:10, nation:"US", type:"HT", frag:0.88, dmg:1801.74, spot:1.22, def:0.73, win:48.79 }, "t57_58": { title:"T57 Heavy Tank", tier:10, nation:"US", type:"HT", frag:1.15, dmg:2164.45, spot:0.85, def:0.76, win:49.61 }, "t18": { title:"T18", tier:2, nation:"US", type:"TD", frag:2.27, dmg:335.58, spot:1.24, def:1.64, win:58.91 }, "t82": { title:"T82", tier:3, nation:"US", type:"TD", frag:1.54, dmg:375.15, spot:1.33, def:1.18, win:58.10 }, "m8a1": { title:"M8A1", tier:4, nation:"US", type:"TD", frag:1.36, dmg:509.85, spot:1.58, def:1.67, win:57.98 }, "t40": { title:"T40", tier:4, nation:"US", type:"TD", frag:1.49, dmg:559.72, spot:1.24, def:1.48, win:57.62 }, "m10_wolverine": { title:"M10 Wolverine", tier:5, nation:"US", type:"TD", frag:1.27, dmg:623.51, spot:1.02, def:1.42, win:54.98 }, "t49": { title:"T49", tier:5, nation:"US", type:"TD", frag:1.43, dmg:685.74, spot:1.78, def:1.56, win:57.38 }, "m18_hellcat": { title:"M18 Hellcat", tier:6, nation:"US", type:"TD", frag:1.28, dmg:951.99, spot:1.53, def:1.40, win:55.92 }, "m36_slagger": { title:"M36 Jackson", tier:6, nation:"US", type:"TD", frag:1.10, dmg:842.36, spot:0.93, def:1.16, win:54.11 }, "t25_at": { title:"T25 AT", tier:7, nation:"US", type:"TD", frag:1.06, dmg:1080.75, spot:0.83, def:1.11, win:53.08 }, "t25_2": { title:"T25/2", tier:7, nation:"US", type:"TD", frag:0.97, dmg:1018.60, spot:1.02, def:1.14, win:52.79 }, "t28": { title:"T28", tier:8, nation:"US", type:"TD", frag:1.02, dmg:1381.98, spot:0.52, def:0.93, win:50.60 }, "t28_prototype": { title:"T28 Prototype", tier:8, nation:"US", type:"TD", frag:1.06, dmg:1454.93, spot:0.53, def:0.98, win:50.92 }, "t30": { title:"T30", tier:9, nation:"US", type:"TD", frag:1.03, dmg:1771.79, spot:0.77, def:0.63, win:50.20 }, "t95": { title:"T95", tier:9, nation:"US", type:"TD", frag:1.08, dmg:1779.36, spot:0.51, def:0.65, win:51.37 }, "t110e3": { title:"T110E3", tier:10, nation:"US", type:"TD", frag:1.14, dmg:2291.08, spot:0.81, def:0.59, win:50.74 }, "t110e4": { title:"T110E4", tier:10, nation:"US", type:"TD", frag:1.07, dmg:2168.08, spot:0.85, def:0.60, win:48.95 }, "t57": { title:"T57", tier:2, nation:"US", type:"SP", frag:1.44, dmg:280.09, spot:0.37, def:2.09, win:54.81 }, "m7_priest": { title:"M7 Priest", tier:3, nation:"US", type:"SP", frag:1.03, dmg:571.74, spot:0.11, def:1.92, win:51.08 }, "m37": { title:"M37", tier:4, nation:"US", type:"SP", frag:1.05, dmg:404.22, spot:0.14, def:1.56, win:52.96 }, "m41": { title:"M41", tier:5, nation:"US", type:"SP", frag:1.04, dmg:987.10, spot:0.08, def:1.49, win:50.69 }, "m44": { title:"M44", tier:6, nation:"US", type:"SP", frag:1.06, dmg:877.25, spot:0.08, def:1.51, win:52.91 }, "m12": { title:"M12", tier:7, nation:"US", type:"SP", frag:0.97, dmg:1276.15, spot:0.06, def:1.06, win:50.34 }, "m40m43": { title:"M40/M43", tier:8, nation:"US", type:"SP", frag:1.00, dmg:1527.42, spot:0.05, def:0.82, win:49.92 }, "m53_55": { title:"M53/M55", tier:9, nation:"US", type:"SP", frag:1.00, dmg:1739.79, spot:0.04, def:0.84, win:50.71 }, "t92": { title:"T92", tier:10, nation:"US", type:"SP", frag:0.93, dmg:1799.91, spot:0.04, def:0.65, win:47.85 }, "gb03_cruiser_mk_i": { title:"Cruiser Mk. I", tier:2, nation:"UK", type:"LT", frag:1.83, dmg:314.46, spot:1.63, def:1.68, win:58.24 }, "gb58_cruiser_mk_iii": { title:"Cruiser Mk. III", tier:2, nation:"UK", type:"LT", frag:1.96, dmg:333.72, spot:2.29, def:1.39, win:61.52 }, "gb76_mk_vic": { title:"Light Mk. VIC", tier:2, nation:"UK", type:"LT", frag:1.69, dmg:250.02, spot:2.39, def:1.64, win:60.72, prem:1 }, "gb69_cruiser_mk_ii": { title:"Cruiser Mk. II", tier:3, nation:"UK", type:"LT", frag:1.46, dmg:317.28, spot:1.06, def:1.13, win:56.12 }, "gb59_cruiser_mk_iv": { title:"Cruiser Mk. IV", tier:3, nation:"UK", type:"LT", frag:1.56, dmg:374.10, spot:1.89, def:1.06, win:60.38 }, "gb60_covenanter": { title:"Covenanter", tier:4, nation:"UK", type:"LT", frag:1.05, dmg:374.06, spot:1.85, def:1.12, win:56.72 }, "gb04_valentine": { title:"Valentine", tier:4, nation:"UK", type:"LT", frag:0.91, dmg:349.56, spot:0.86, def:1.35, win:54.38 }, "gb20_crusader": { title:"Crusader", tier:5, nation:"UK", type:"LT", frag:1.03, dmg:470.39, spot:1.75, def:1.21, win:54.66 }, "gb01_medium_mark_i": { title:"Vickers Medium Mk. I", tier:1, nation:"UK", type:"MT", frag:1.92, dmg:246.71, spot:1.20, def:1.21, win:58.11 }, "gb05_vickers_medium_mk_ii": { title:"Vickers Medium Mk. II", tier:2, nation:"UK", type:"MT", frag:1.72, dmg:285.43, spot:1.03, def:1.18, win:58.22 }, "gb06_vickers_medium_mk_iii": { title:"Vickers Medium Mk. III", tier:3, nation:"UK", type:"MT", frag:1.16, dmg:289.12, spot:1.03, def:1.02, win:54.98 }, "gb07_matilda": { title:"Matilda", tier:4, nation:"UK", type:"MT", frag:1.42, dmg:535.35, spot:0.92, def:1.72, win:58.47 }, "gb68_matilda_black_prince": { title:"Matilda Black Prince", tier:5, nation:"UK", type:"MT", frag:1.22, dmg:559.42, spot:0.81, def:1.50, win:54.51, prem:1 }, "gb21_cromwell": { title:"Cromwell", tier:6, nation:"UK", type:"MT", frag:1.07, dmg:715.77, spot:2.10, def:0.98, win:55.01 }, "gb22_comet": { title:"Comet", tier:7, nation:"UK", type:"MT", frag:1.02, dmg:933.58, spot:1.81, def:1.09, win:53.37 }, "gb23_centurion": { title:"Centurion Mk. I", tier:8, nation:"UK", type:"MT", frag:0.83, dmg:1156.00, spot:1.33, def:0.94, win:52.72 }, "gb24_centurion_mk3": { title:"Centurion Mk. 7/1", tier:9, nation:"UK", type:"MT", frag:0.90, dmg:1545.94, spot:1.29, def:0.84, win:50.18 }, "gb70_fv4202_105": { title:"FV4202", tier:10, nation:"UK", type:"MT", frag:0.92, dmg:1786.36, spot:1.41, def:0.75, win:47.93 }, "gb08_churchill_i": { title:"Churchill I", tier:5, nation:"UK", type:"HT", frag:1.20, dmg:642.74, spot:0.91, def:1.27, win:54.85 }, "gb51_excelsior": { title:"Excelsior", tier:5, nation:"UK", type:"HT", frag:1.41, dmg:643.58, spot:1.57, def:1.33, win:56.86, prem:1 }, "gb09_churchill_vii": { title:"Churchill VII", tier:6, nation:"UK", type:"HT", frag:1.02, dmg:775.04, spot:0.78, def:1.13, win:52.82 }, "gb63_tog_ii": { title:"TOG II*", tier:6, nation:"UK", type:"HT", frag:1.22, dmg:881.79, spot:0.63, def:1.32, win:52.73, prem:1 }, "gb10_black_prince": { title:"Black Prince", tier:7, nation:"UK", type:"HT", frag:0.95, dmg:1022.00, spot:0.89, def:1.13, win:54.06 }, "gb11_caernarvon": { title:"Caernarvon", tier:8, nation:"UK", type:"HT", frag:0.83, dmg:1225.63, spot:1.12, def:0.96, win:51.46 }, "gb12_conqueror": { title:"Conqueror", tier:9, nation:"UK", type:"HT", frag:0.88, dmg:1594.90, spot:1.04, def:0.68, win:49.90 }, "gb13_fv215b": { title:"FV215b", tier:10, nation:"UK", type:"HT", frag:0.91, dmg:1867.24, spot:1.10, def:0.69, win:48.25 }, "gb39_universal_carrierqf2": { title:"Universal Carrier 2-pdr", tier:2, nation:"UK", type:"TD", frag:1.91, dmg:312.49, spot:1.40, def:1.59, win:59.46 }, "gb42_valentine_at": { title:"Valentine AT", tier:3, nation:"UK", type:"TD", frag:1.66, dmg:391.47, spot:0.90, def:1.70, win:58.30 }, "gb57_alecto": { title:"Alecto", tier:4, nation:"UK", type:"TD", frag:1.37, dmg:492.26, spot:1.47, def:1.62, win:57.10 }, "gb73_at2": { title:"AT 2", tier:5, nation:"UK", type:"TD", frag:1.22, dmg:591.67, spot:0.81, def:1.60, win:57.09 }, "gb74_at8": { title:"AT 8", tier:6, nation:"UK", type:"TD", frag:1.17, dmg:855.21, spot:0.72, def:1.46, win:56.57 }, "gb40_gun_carrier_churchill": { title:"Churchill Gun Carrier", tier:6, nation:"UK", type:"TD", frag:0.90, dmg:704.10, spot:0.44, def:0.98, win:51.39 }, "gb71_at_15a": { title:"AT 15A", tier:7, nation:"UK", type:"TD", frag:0.94, dmg:981.49, spot:0.71, def:1.22, win:52.04, prem:1 }, "gb75_at7": { title:"AT 7", tier:7, nation:"UK", type:"TD", frag:1.19, dmg:1251.48, spot:0.70, def:1.32, win:56.15 }, "gb72_at15": { title:"AT 15", tier:8, nation:"UK", type:"TD", frag:1.10, dmg:1479.49, spot:0.68, def:1.23, win:52.84 }, "gb32_tortoise": { title:"Tortoise", tier:9, nation:"UK", type:"TD", frag:1.09, dmg:1825.32, spot:0.64, def:0.88, win:51.06 }, "gb48_fv215b_183": { title:"FV215b (183)", tier:10, nation:"UK", type:"TD", frag:1.25, dmg:2320.08, spot:0.60, def:0.56, win:48.88 }, "gb25_loyd_carrier": { title:"Loyd Gun Carriage", tier:2, nation:"UK", type:"SP", frag:1.33, dmg:210.72, spot:0.22, def:2.25, win:54.07 }, "gb27_sexton": { title:"Sexton I", tier:3, nation:"UK", type:"SP", frag:1.16, dmg:213.36, spot:0.09, def:5.73, win:50.89 }, "gb78_sexton_i": { title:"Sexton II", tier:3, nation:"UK", type:"SP", frag:1.16, dmg:213.36, spot:0.09, def:5.73, win:50.89, prem:1 }, "gb26_birch_gun": { title:"Birch Gun", tier:4, nation:"UK", type:"SP", frag:1.04, dmg:398.93, spot:0.10, def:2.10, win:53.08 }, "gb28_bishop": { title:"Bishop", tier:5, nation:"UK", type:"SP", frag:1.19, dmg:638.59, spot:0.11, def:1.66, win:54.12 }, "gb77_fv304": { title:"FV304", tier:6, nation:"UK", type:"SP", frag:1.13, dmg:858.75, spot:0.17, def:2.11, win:54.40 }, "gb29_crusader_5inch": { title:"Crusader 5.5-in. SP", tier:7, nation:"UK", type:"SP", frag:0.95, dmg:1062.30, spot:0.08, def:1.64, win:51.44 }, "gb79_fv206": { title:"FV207", tier:8, nation:"UK", type:"SP", frag:0.94, dmg:1316.67, spot:0.03, def:0.84, win:49.95 }, "gb30_fv3805": { title:"FV3805", tier:9, nation:"UK", type:"SP", frag:0.98, dmg:1691.20, spot:0.03, def:0.74, win:49.95 }, "gb31_conqueror_gun": { title:"Conqueror Gun Carriage", tier:10, nation:"UK", type:"SP", frag:1.04, dmg:2176.48, spot:0.03, def:0.89, win:50.72 }, "renaultft": { title:"Renault FT", tier:1, nation:"FR", type:"LT", frag:1.84, dmg:254.62, spot:1.55, def:1.98, win:59.14 }, "d1": { title:"D1", tier:2, nation:"FR", type:"LT", frag:1.41, dmg:233.41, spot:1.18, def:2.14, win:55.99 }, "hotchkiss_h35": { title:"Hotchkiss H35", tier:2, nation:"FR", type:"LT", frag:1.50, dmg:246.48, spot:1.40, def:1.87, win:58.19 }, "amx38": { title:"AMX 38", tier:3, nation:"FR", type:"LT", frag:0.99, dmg:220.70, spot:0.98, def:1.90, win:55.57 }, "amx40": { title:"AMX 40", tier:4, nation:"FR", type:"LT", frag:0.79, dmg:263.73, spot:0.86, def:1.10, win:53.78 }, "elc_amx": { title:"ELC AMX", tier:5, nation:"FR", type:"LT", frag:0.66, dmg:457.53, spot:2.63, def:0.73, win:54.02 }, "amx_12t": { title:"AMX 12 t", tier:6, nation:"FR", type:"LT", frag:0.57, dmg:471.17, spot:2.03, def:0.55, win:51.82 }, "amx_13_75": { title:"AMX 13 75", tier:7, nation:"FR", type:"LT", frag:0.65, dmg:596.39, spot:2.10, def:0.65, win:52.83 }, "amx_13_90": { title:"AMX 13 90", tier:8, nation:"FR", type:"LT", frag:0.72, dmg:835.36, spot:2.53, def:0.65, win:52.32 }, "d2": { title:"D2", tier:3, nation:"FR", type:"MT", frag:1.34, dmg:315.43, spot:0.97, def:1.60, win:57.57 }, "lorraine40t": { title:"Lorraine 40 t", tier:9, nation:"FR", type:"MT", frag:0.98, dmg:1394.38, spot:1.41, def:0.79, win:49.88 }, "bat_chatillon25t": { title:"Bat.-Châtillon 25 t", tier:10, nation:"FR", type:"MT", frag:1.11, dmg:1782.25, spot:2.14, def:0.86, win:49.67 }, "b1": { title:"B1", tier:4, nation:"FR", type:"HT", frag:1.09, dmg:343.52, spot:1.11, def:1.27, win:53.03 }, "bdr_g1b": { title:"BDR G1 B", tier:5, nation:"FR", type:"HT", frag:1.23, dmg:646.81, spot:0.86, def:1.02, win:53.89 }, "arl_44": { title:"ARL 44", tier:6, nation:"FR", type:"HT", frag:0.97, dmg:808.57, spot:0.90, def:0.82, win:52.18 }, "amx_m4_1945": { title:"AMX M4 mle. 45", tier:7, nation:"FR", type:"HT", frag:0.89, dmg:1025.75, spot:0.94, def:0.92, win:51.48 }, "amx_50_100": { title:"AMX 50 100", tier:8, nation:"FR", type:"HT", frag:1.12, dmg:1411.05, spot:0.95, def:1.04, win:51.36 }, "fcm_50t": { title:"FCM 50 t", tier:8, nation:"FR", type:"HT", frag:0.95, dmg:1254.97, spot:1.52, def:1.08, win:50.23, prem:1 }, "amx_50_120": { title:"AMX 50 120", tier:9, nation:"FR", type:"HT", frag:1.06, dmg:1679.94, spot:0.91, def:0.82, win:49.61 }, "f10_amx_50b": { title:"AMX 50 B", tier:10, nation:"FR", type:"HT", frag:1.05, dmg:1960.29, spot:0.98, def:0.79, win:48.07 }, "renaultft_ac": { title:"Renault FT AC", tier:2, nation:"FR", type:"TD", frag:2.04, dmg:331.21, spot:0.89, def:1.85, win:57.86 }, "fcm_36pak40": { title:"FCM 36 Pak 40", tier:3, nation:"FR", type:"TD", frag:1.88, dmg:455.03, spot:1.10, def:1.78, win:60.57, prem:1 }, "renaultue57": { title:"Renault UE 57", tier:3, nation:"FR", type:"TD", frag:1.51, dmg:378.80, spot:1.10, def:1.72, win:58.99 }, "somua_sau_40": { title:"Somua SAu 40", tier:4, nation:"FR", type:"TD", frag:1.20, dmg:403.77, spot:0.56, def:1.10, win:53.62 }, "s_35ca": { title:"S35 CA", tier:5, nation:"FR", type:"TD", frag:1.35, dmg:679.76, spot:0.90, def:1.39, win:54.28 }, "arl_v39": { title:"ARL V39", tier:6, nation:"FR", type:"TD", frag:0.96, dmg:742.29, spot:0.67, def:1.03, win:50.75 }, "amx_ac_mle1946": { title:"AMX AC mle. 46", tier:7, nation:"FR", type:"TD", frag:0.92, dmg:1007.13, spot:0.71, def:1.03, win:51.59 }, "amx_ac_mle1948": { title:"AMX AC mle. 48", tier:8, nation:"FR", type:"TD", frag:0.98, dmg:1333.20, spot:0.82, def:0.96, win:50.34 }, "amx50_foch": { title:"AMX 50 Foch", tier:9, nation:"FR", type:"TD", frag:1.00, dmg:1663.25, spot:1.01, def:0.91, win:50.47 }, "amx_50fosh_155": { title:"AMX 50 Foch (155)", tier:10, nation:"FR", type:"TD", frag:1.29, dmg:2362.01, spot:0.96, def:0.74, win:50.06 }, "renaultbs": { title:"Renault FT 75 BS", tier:2, nation:"FR", type:"SP", frag:1.40, dmg:254.15, spot:0.17, def:1.72, win:55.56 }, "lorraine39_l_am": { title:"Lorraine 39L AM", tier:3, nation:"FR", type:"SP", frag:1.35, dmg:494.44, spot:0.14, def:1.98, win:54.54 }, "amx_ob_am105": { title:"AMX 105 AM mle. 47", tier:4, nation:"FR", type:"SP", frag:1.11, dmg:441.09, spot:0.12, def:1.69, win:53.65 }, "_105_lefh18b2": { title:"105 leFH18B2", tier:5, nation:"FR", type:"SP", frag:1.36, dmg:697.02, spot:0.11, def:1.90, win:54.34, prem:1 }, "amx_105am": { title:"AMX 13 105 AM mle. 50", tier:5, nation:"FR", type:"SP", frag:1.18, dmg:657.52, spot:0.11, def:2.29, win:52.20 }, "amx_13f3am": { title:"AMX 13 F3 AM", tier:6, nation:"FR", type:"SP", frag:1.09, dmg:1052.11, spot:0.08, def:1.60, win:51.75 }, "lorraine155_50": { title:"Lorraine 155 mle. 50", tier:7, nation:"FR", type:"SP", frag:0.92, dmg:1249.14, spot:0.07, def:1.28, win:50.17 }, "lorraine155_51": { title:"Lorraine 155 mle. 51", tier:8, nation:"FR", type:"SP", frag:0.95, dmg:1408.47, spot:0.07, def:1.07, win:49.54 }, "bat_chatillon155_55": { title:"Bat.-Châtillon 155 55", tier:9, nation:"FR", type:"SP", frag:0.96, dmg:1623.75, spot:0.05, def:0.99, win:48.95 }, "bat_chatillon155_58": { title:"Bat.-Châtillon 155 58", tier:10, nation:"FR", type:"SP", frag:1.08, dmg:1813.02, spot:0.08, def:1.14, win:48.34 }, "ch06_renault_nc31": { title:"Renault NC-31", tier:1, nation:"CH", type:"LT", frag:2.00, dmg:262.35, spot:1.52, def:1.76, win:57.31 }, "ch07_vickers_mke_type_bt26": { title:"Vickers Mk. E Type B", tier:2, nation:"CH", type:"LT", frag:1.77, dmg:294.26, spot:1.58, def:1.56, win:59.60 }, "ch08_type97_chi_ha": { title:"Type 2597 Chi-Ha", tier:3, nation:"CH", type:"LT", frag:1.53, dmg:373.43, spot:1.40, def:1.53, win:59.44 }, "ch09_m5": { title:"M5A1 Stuart", tier:4, nation:"CH", type:"LT", frag:1.01, dmg:361.86, spot:2.41, def:1.05, win:55.82 }, "ch15_59_16": { title:"59-16", tier:6, nation:"CH", type:"LT", frag:0.56, dmg:394.08, spot:2.77, def:0.56, win:52.74 }, "ch24_type64": { title:"Type 64", tier:6, nation:"CH", type:"LT", frag:0.58, dmg:492.99, spot:2.96, def:0.62, win:53.16, prem:1 }, "ch02_type62": { title:"Type 62", tier:7, nation:"CH", type:"LT", frag:0.63, dmg:641.83, spot:2.39, def:0.72, win:51.08, prem:1 }, "ch16_wz_131": { title:"WZ-131", tier:7, nation:"CH", type:"LT", frag:0.65, dmg:700.18, spot:2.59, def:0.72, win:52.67 }, "ch17_wz131_1_wz132": { title:"WZ-132", tier:8, nation:"CH", type:"LT", frag:0.61, dmg:765.01, spot:2.87, def:0.68, win:51.48 }, "ch21_t34": { title:"Type T-34", tier:5, nation:"CH", type:"MT", frag:1.14, dmg:523.84, spot:1.50, def:1.14, win:54.03 }, "ch20_type58": { title:"Type 58", tier:6, nation:"CH", type:"MT", frag:1.04, dmg:721.68, spot:1.65, def:1.03, win:53.33 }, "ch04_t34_1": { title:"T-34-1", tier:7, nation:"CH", type:"MT", frag:1.00, dmg:983.87, spot:1.62, def:1.02, win:54.28 }, "ch05_t34_2": { title:"T-34-2", tier:8, nation:"CH", type:"MT", frag:0.86, dmg:1063.24, spot:1.73, def:0.93, win:50.92 }, "ch14_t34_3": { title:"T-34-3", tier:8, nation:"CH", type:"MT", frag:0.92, dmg:1120.35, spot:1.56, def:0.77, win:50.32, prem:1 }, "ch01_type59": { title:"Type 59", tier:8, nation:"CH", type:"MT", frag:0.92, dmg:1079.42, spot:1.74, def:0.93, win:51.69, prem:1 }, "ch18_wz-120": { title:"WZ-120", tier:9, nation:"CH", type:"MT", frag:0.92, dmg:1472.54, spot:1.59, def:0.69, win:51.18 }, "ch19_121": { title:"121", tier:10, nation:"CH", type:"MT", frag:0.93, dmg:1766.12, spot:1.45, def:0.65, win:48.27 }, "ch10_is2": { title:"IS-2", tier:7, nation:"CH", type:"HT", frag:1.07, dmg:1138.75, spot:1.14, def:0.84, win:53.98 }, "ch11_110": { title:"110", tier:8, nation:"CH", type:"HT", frag:0.94, dmg:1317.75, spot:1.17, def:0.83, win:53.17 }, "ch23_112": { title:"112", tier:8, nation:"CH", type:"HT", frag:1.00, dmg:1323.93, spot:1.35, def:0.86, win:53.74, prem:1 }, "ch12_111_1_2_3": { title:"WZ-111 model 1-4", tier:9, nation:"CH", type:"HT", frag:0.92, dmg:1639.42, spot:1.32, def:0.62, win:51.51 }, "ch22_113": { title:"113", tier:10, nation:"CH", type:"HT", frag:0.84, dmg:1746.04, spot:1.31, def:0.61, win:48.15 }, "nc27": { title:"Renault Otsu", tier:1, nation:"JP", type:"LT", frag:1.95, dmg:236.71, spot:1.40, def:2.51, win:57.62 }, "ha_go": { title:"Type 95 Ha-Go", tier:2, nation:"JP", type:"LT", frag:1.73, dmg:289.84, spot:1.72, def:1.81, win:60.55 }, "ke_ni": { title:"Type 98 Ke-Ni", tier:3, nation:"JP", type:"LT", frag:1.39, dmg:334.20, spot:1.81, def:1.67, win:58.83 }, "ke_ni_b": { title:"Type 98 Ke-Ni Otsu", tier:3, nation:"JP", type:"LT", frag:1.39, dmg:314.00, spot:1.95, def:1.64, win:57.44, prem:1 }, "ke_ho": { title:"Type 5 Ke-Ho", tier:4, nation:"JP", type:"LT", frag:1.17, dmg:414.85, spot:1.88, def:1.24, win:56.39 }, "chi_ni": { title:"Chi-Ni", tier:2, nation:"JP", type:"MT", frag:1.74, dmg:276.60, spot:1.49, def:1.56, win:59.62 }, "chi_ha": { title:"Type 97 Chi-Ha", tier:3, nation:"JP", type:"MT", frag:1.46, dmg:363.13, spot:1.29, def:1.36, win:57.88 }, "chi_he": { title:"Type 1 Chi-He", tier:4, nation:"JP", type:"MT", frag:1.13, dmg:419.76, spot:1.25, def:1.18, win:56.26 }, "chi_nu": { title:"Type 3 Chi-Nu", tier:5, nation:"JP", type:"MT", frag:1.05, dmg:529.11, spot:1.27, def:1.13, win:54.05 }, "chi_nu_kai": { title:"Type 3 Chi-Nu Kai", tier:5, nation:"JP", type:"MT", frag:1.10, dmg:558.96, spot:1.10, def:1.18, win:53.64, prem:1 }, "chi_to": { title:"Type 4 Chi-To", tier:6, nation:"JP", type:"MT", frag:1.07, dmg:779.72, spot:1.17, def:1.10, win:52.28 }, "chi_ri": { title:"Type 5 Chi-Ri", tier:7, nation:"JP", type:"MT", frag:0.98, dmg:957.27, spot:1.10, def:1.06, win:51.30 }, "sta_1": { title:"STA-1", tier:8, nation:"JP", type:"MT", frag:0.92, dmg:1204.21, spot:1.41, def:1.09, win:51.45 }, "type_61": { title:"Type 61", tier:9, nation:"JP", type:"MT", frag:0.99, dmg:1619.47, spot:1.37, def:0.81, win:51.42 }, "st_b1": { title:"STB-1", tier:10, nation:"JP", type:"MT", frag:1.00, dmg:1858.56, spot:1.63, def:0.81, win:49.56 }, // alpha/beta tanks "kv-220": { title:"KV-220 Beta-Test", tier:5, nation:"RU", type:"HT", frag:1.47, dmg:677.60, spot:1.39, def:1.28, win:60.18, prem:1 }, "pzv_pziv_ausf_alfa": { title:"Pz.Kpfw. V/IV Alpha", tier:6, nation:"DE", type:"MT", frag:1.03, dmg:764.85, spot:1.10, def:1.35, win:52.30, prem:1 } }; vehAmount = vehTierTotal = vehBattlesTotal = 0, premBattlesTotal = premWinsTotal = premBadgesTotal = 0, tenBattlesTotal = tenWinsTotal = tenBadgesTotal = 0, vehExpFrag = vehExpDmg = vehExpSpot = vehExpDef = vehExpWin = 0; vehTiersObj = {1:{b:0,c:0},2:{b:0,c:0},3:{b:0,c:0},4:{b:0,c:0},5:{b:0,c:0},6:{b:0,c:0},7:{b:0,c:0},8:{b:0,c:0},9:{b:0,c:0},10:{b:0,c:0}}; vehBadgesObj = {0:{c:0,p:0},1:{c:0,p:0},2:{c:0,p:0},3:{c:0,p:0},4:{c:0,p:0},5:{c:0,p:0}}; premArr = []; tenArr = []; vehListObj = {}; // total mastery badge and colouring tank table category rows var typeRow_class = document.getElementsByClassName('t-profile_tankstype js-table-dropdown-link'); for (var i=0; i 2) { premBadgesTotal += 1; } } // get info for tier 10 table if (vehTier == 10) { tenBattlesTotal += filter(vehRow_class[i].cells[1].innerHTML,1); tenWinsTotal += filter(vehRow_class[i].cells[2].innerHTML.match(/[\d.,\s]+\s-/)[0],1); tenArr.push([vehRow_class[i].cloneNode(true), vehRowStats_class[i].cloneNode(true)]); if (vehRow_class[i].cells[3].innerHTML.length > 2) { tenBadgesTotal += 1; } } // summarize player vehicles into dedicated array for console vehListObj[vehStatArr.title] = { "infoNation": vehStatArr.nation, "infoTier": vehStatArr.tier, "infoType": vehStatArr.type, "infoBattles": vehBattles, "infoBattlesWins": parseFloat(typeWins.toFixed(0)), "infoVehBadge": vehBadge, "statExpected": {frag: vehStatArr.frag, dmg: vehStatArr.dmg, spot: vehStatArr.spot, def: vehStatArr.def, win: vehStatArr.win} } } else { vehRow_class[i].cells[0].getElementsByTagName('span')[1].className += " b-red-name"; vehRow_class[i].cells[0].getElementsByTagName('span')[1].innerHTML += " - Error!"; console.info("Vehicle named "+vehImgName[1]+" doesn't exist in statArr, please report!"); } } // finding statistic tables var mb_table = document.getElementsByClassName('b-result-classes')[0].getElementsByClassName('t-dotted')[0]; or_table = document.getElementsByClassName('b-result')[0].getElementsByClassName('t-dotted')[0]; bp_table = document.getElementsByClassName('b-result')[1].getElementsByClassName('t-dotted')[0]; sm_ratio = document.getElementsByClassName('b-speedometer-ratio'); // fetching info and calculate draws var battles = filter(or_table.rows[0].cells[1].innerHTML,1), wins = filter(or_table.rows[1].cells[1].innerHTML.match(/([\d.,\s| ]+\d+)\s/)[1],1), losses = filter(or_table.rows[2].cells[1].innerHTML.match(/([\d.,\s| ]+\d+)\s/)[1],1), survive = filter(or_table.rows[3].cells[1].innerHTML.match(/([\d.,\s| ]+\d+)\s/)[1],1), exp = filter(or_table.rows[4].cells[1].innerHTML,1), avgExp = filter(or_table.rows[5].cells[1].innerHTML,1), maxExp = filter(or_table.rows[6].cells[1].innerHTML,1), frags = filter(bp_table.rows[0].cells[1].innerHTML,1), spotted = filter(bp_table.rows[1].cells[1].innerHTML,1), hitRate = filter(bp_table.rows[2].cells[1].innerHTML,1), dmgDlt = filter(bp_table.rows[3].cells[1].innerHTML,1), caps = filter(bp_table.rows[5].cells[1].innerHTML,1), defs = filter(bp_table.rows[6].cells[1].innerHTML,1), deaths = filter(sm_ratio[0].innerHTML.match(/\/(.+)$/)[1],1), dmgRec = filter(sm_ratio[1].innerHTML.match(/\/(.+)$/)[1],1), draws = battles-(wins+losses); // calculate averages and rates var avgBat = battles/daysPassed, avgWin = wins/battles, avgWinPct = avgWin*100, avgLoss = losses/battles, avgLossPct = avgLoss*100, avgDraws = draws/battles, avgDrawsPct = avgDraws*100, avgSurv = survive/battles, avgSurvPct = avgSurv*100, avgFrags = frags/battles, avgDeaths = deaths/battles, avgSpots = spotted/battles, avgDmg = dmgDlt/battles, avgDmgRec = dmgRec/battles, avgCap = caps/battles, avgDef = defs/battles, avgTier = vehTierTotal/vehBattlesTotal; winlossRate = wins/losses; // colourize stats var avgWinrate = colStat(avgWinPct, "wr", 2, "pct", "" ), avgLossrate = colStat(avgLossPct, "wr", 2, "pct", avgDraws ), avgSurvrate = colStat(avgSurvPct, "sr", 2, "pct", "" ), avgHitrate = colStat(hitRate, "hr", 0, "pct", "" ), colBattles = colStat(battles, "bat", 0, "", "" ), avgDrawrate = colStat(avgDrawsPct, "", 2, "pct", "" ); // Finalize WN8 - e = expected, w = weighted, n = normalized // all steps are stored in variables for console insertion var eFrag = vehExpFrag/vehBattlesTotal, eDmg = vehExpDmg /vehBattlesTotal, eSpot = vehExpSpot/vehBattlesTotal, eDef = vehExpDef /vehBattlesTotal, eWin = vehExpWin /vehBattlesTotal, wFrag = avgFrags/eFrag, wDmg = avgDmg/eDmg, wSpot = avgSpots/eSpot, wDef = avgDef/eDef, wWin = avgWinPct/eWin, nWin = Math.max( (wWin - 0.71) / (1 - 0.71) ,0), nDmg = Math.max( (wDmg - 0.22) / (1 - 0.22) ,0), nFrag = Math.max(Math.min(nDmg+0.2,(wFrag - 0.12) / (1 - 0.12)),0), nSpot = Math.max(Math.min(nDmg+0.1,(wSpot - 0.38) / (1 - 0.38)),0), nDef = Math.max(Math.min(nDmg+0.1,(wDef - 0.10) / (1 - 0.10)),0); // calculate ratings // WN8 var wn8 = (function() { var frag = 210*nDmg*nFrag, dmg = 980*nDmg, spot = 155*nFrag*nSpot, def = 75*nDef*nFrag, win = 145*Math.min(1.8,nWin), rating = frag+dmg+spot+def+win; if (rating>=2900) { pct = scale = 100; } else { pct = (rating/2900)*100; scale = Math.max(Math.min(rating*(rating*(rating*(rating*(rating*(0.00000000000000000007119*rating+0.0000000000000002334)-0.000000000006963)+0.00000002845)-0.00004558)+0.06565)-0.18,100),0); } return { frag: frag, dmg: dmg, spot: spot, def: def, win: win, rating: rating, pct: pct, scale: scale, ratingCol: colStat(rating,"wn8",2), scaleCol: colStat(scale,"scale_wn8",2) }; })(); // WN7 - Legacy Support var wn7 = (function() { var frag = avgFrags*(1240-1040/(Math.pow(Math.min(avgTier,6),0.164))), dmg = avgDmg*530/(184*Math.exp(0.24*avgTier)+130), spot = avgSpots*125*Math.min(avgTier,3)/3, def = Math.min(2.2,avgDef)*100, win = (((185/(0.17+Math.exp((avgWinPct-35)*-0.134)))-500)*0.45), norm = -Math.abs((((5-Math.min(avgTier,5))*125)/(1+Math.exp(avgTier-Math.pow(battles/220,3/avgTier))*1.5))), rating = frag+dmg+spot+def+win+norm; if (rating>=2050) { pct = scale = 100; } else { pct = (rating/2050)*100; scale = Math.max(Math.min(rating*(rating*(rating*(-0.0000000000083*rating+0.0000000287)-0.000024)+0.049)-2.7,100),0); } return { frag: frag, dmg: dmg, spot: spot, def: def, win: win, norm: norm, rating: rating, pct: pct, scale: scale, ratingCol: colStat(rating,"wn7",2), scaleCol: colStat(scale,"scale_wn7",2) }; })(); // efficiency - improved var eff = (function() { var frag = avgFrags*250, dmg = avgDmg*(10/(avgTier+2))*(0.23+2*avgTier/100), spot = avgSpots*150, cap = (Math.log(avgCap+1)/Math.log(1.732))*150, def = avgDef*150, rating = frag+dmg+spot+cap+def; if (rating>=2050) { pct = scale = 100; } else { pct = (rating/2050)*100; scale = Math.max(Math.min(rating*(rating*(rating*(rating*(rating*(0.000000000000000045254*rating-0.00000000000033131)+0.00000000094164)-0.0000013227)+0.00095664)-0.2598)+13.23,100),0);; } return { frag: frag, dmg: dmg, spot: spot, cap: cap, def: def, rating: rating, pct: pct, scale: scale, ratingCol: colStat(rating,"eff",2), scaleCol: colStat(scale,"scale_eff",2) }; })(); // end formula calculations and variables // check for missing battles and notify colVehBattlesTotal = " "; if (vehBattlesTotal != battles) { profileError_div.innerHTML = locale.p69; profileError_div.style.display="inline-block"; colVehBattlesTotal = "API: "+filter(vehBattlesTotal,2)+""; } // personal data - modify data var pTable_class = document.getElementsByClassName('t-personal-data')[0]; pTable_class.rows[0].cells[0].innerHTML = locale.p09; pTable_class.rows[1].cells[0].innerHTML = avgWinrate; pTable_class.rows[0].cells[1].innerHTML = locale.p10; pTable_class.rows[1].cells[1].innerHTML = colBattles; pT_avgxp_name = document.createElement('th'); pT_avgxp_name.className = "t-personal-data_ico t-personal-data_ico__exp"; pT_avgxp_name.innerHTML = locale.p11; pTable_class.rows[0].cells[1].parentNode.insertBefore(pT_avgxp_name, pTable_class.rows[0].cells[1].nextSibling); pT_avgxp_value = document.createElement('td'); pT_avgxp_value.className = "t-personal-data_value"; pT_avgxp_value.innerHTML = filter(avgExp,2); pTable_class.rows[1].cells[1].parentNode.insertBefore(pT_avgxp_value, pTable_class.rows[1].cells[1].nextSibling); pTable_class.rows[0].cells[4].innerHTML = locale.p70; pTable_class.rows[0].cells[4].className = "t-personal-data_ico t-personal-data_ico__hitrate"; pTable_class.rows[1].cells[3].innerHTML = avgHitrate; pTable_class.rows[0].cells[5].innerHTML = locale.p71; pT_avgtier_name = document.createElement('th'); pT_avgtier_name.className = "t-personal-data_ico t-personal-data_ico__tier"; pT_avgtier_name.innerHTML = locale.p12; pTable_class.rows[0].appendChild(pT_avgtier_name); pT_avgtier_value = document.createElement('td'); pT_avgtier_value.className = "t-personal-data_value"; pT_avgtier_value.innerHTML = avgTier.toFixed(2); pTable_class.rows[1].appendChild(pT_avgtier_value); // speedometer - win/loss ratio var sm_body_class = document.getElementsByClassName('b-speedometer-body')[0]; sm_winrate_div = document.createElement('div'); sm_winrate_div.className = "b-speedometer"; sm_winrate_arrow = Math.min(30*(winlossRate-1),31).toFixed(4); sm_winrate_div.innerHTML = "

"+locale.p13+"

"+winlossRate.toFixed(2)+"

"+filter(wins,3)+" / "+filter(losses,3)+"

"; sm_body_class.appendChild(sm_winrate_div); // performance ratings wrapper var ratings_div = document.createElement('div'); ratings_div.className = "b-ratings-wrpr", ub_class = document.getElementsByClassName('b-userblock-wrpr')[0]; ub_class.parentNode.insertBefore(ratings_div, ub_class.nextSibling); ratingsHeader_div = document.createElement('div'); ratingsHeader_div.className = "b-head-block", ratingsHeader_div.innerHTML += "

"+locale.p14+"

"; ratings_div.appendChild(ratingsHeader_div); ratingsInfo_div = document.createElement('div'); ratingsInfo_div.className = "b-ratings-info", ratings_div.appendChild(ratingsInfo_div); ratingsInfo_table = document.createElement('table'); ratingsInfo_table.className = "t-ratings-info", ratingsInfo_div.appendChild(ratingsInfo_table); // inserting performance ratings ratingsInfo_table.innerHTML = ""+locale.p15+""+locale.p30+""+locale.p16+""+locale.p17+""+wn8.ratingCol+""+wn7.ratingCol+""+eff.ratingCol+""+locale.p18+""; // create and populate performance ratings calcs table var rTable_div = document.createElement('div'); rTable_div.className = "ratings-table"; ratings_div.appendChild(rTable_div); rTable_div.innerHTML = "

"+locale.p19+"

"; rTable = document.createElement('table'); rTable.className = "t-table-ratings"; rTable_div.appendChild(rTable); rTHead = document.createElement('thead'); rTHead.innerHTML = ""+locale.p20+""+locale.p21+""+locale.p22+""+locale.p23+""+locale.p24+""+locale.p25+""+locale.p26+""+locale.p27+""+locale.p28+""; rTable.appendChild(rTHead); rTBody = document.createElement('tbody'); rTable.appendChild(rTBody); ratingsArr = [ // Formula RatingPct Localized Total ScaleColored Frag Dmg Spot Cap Def Win ["wn8", wn8.pct, locale.p29, wn8.ratingCol, wn8.scaleCol, wn8.frag.toFixed(2), wn8.dmg.toFixed(2), wn8.spot.toFixed(2), "–", wn8.def.toFixed(2), wn8.win.toFixed(2) ], ["wn7", wn7.pct, locale.p30, wn7.ratingCol, wn7.scaleCol, wn7.frag.toFixed(2), wn7.dmg.toFixed(2), wn7.spot.toFixed(2), "–", wn7.def.toFixed(2), wn7.win.toFixed(2) ], ["eff", eff.pct, locale.p31, eff.ratingCol, eff.scaleCol, eff.frag.toFixed(2), eff.dmg.toFixed(2), eff.spot.toFixed(2), eff.cap.toFixed(2), eff.def.toFixed(2), "–" ] ]; for (i=0; i
"; rTBody.appendChild(rmRow); } // link to WN thread ratings_div.innerHTML += ""; // end performance ratings wrapper // statistics wrapper var statistics_div = document.getElementsByClassName('b-result-classes')[0].parentNode; statistics_div.className = "b-statistics-wrpr"; ratings_div.parentNode.insertBefore(statistics_div, ratings_div.nextSibling); // remove the old tables ( overall results and battle performance ) mb_table.innerHTML = ""; or_table.innerHTML = ""; bp_table.innerHTML = ""; // populating the tables insertNewTr(mb_table, "", locale.p33, vehBadgesObj[4].c+"("+vehBadgesObj[4].p+"%)"), insertNewTr(mb_table, "", locale.p34, vehBadgesObj[3].c+"("+vehBadgesObj[3].p+"%)"), insertNewTr(mb_table, "", locale.p35, vehBadgesObj[2].c+"("+vehBadgesObj[2].p+"%)"), insertNewTr(mb_table, "", locale.p36, vehBadgesObj[1].c+"("+vehBadgesObj[1].p+"%)"), insertNewTr(mb_table, "", locale.p37, vehBadgesObj[0].c+"("+vehBadgesObj[0].p+"%)"), insertNewTr(mb_table, "", locale.p38, vehBadgesObj[5].c+"("+vehBadgesObj[5].p+"%)"), insertNewTr(or_table, locale.p39, filter(battles,2), colVehBattlesTotal ), insertNewTr(or_table, locale.p40, filter(wins,2), "("+avgWinrate+")" ), insertNewTr(or_table, locale.p41, filter(losses,2), "("+avgLossrate+")" ), insertNewTr(or_table, locale.p42, filter(draws,2), "("+avgDrawrate+")" ), insertNewTr(or_table, locale.p43, filter(survive,2), "("+avgSurvrate+")" ), insertNewTr(or_table, locale.p44, "", avgBat.toFixed(2) ), insertNewTr(or_table, locale.p45, "", filter(exp,2) ), insertNewTr(or_table, locale.p46, "", filter(avgExp,2) ), insertNewTr(or_table, locale.p47, "", filter(maxExp,2) ), insertNewTr(bp_table, locale.p48, filter(frags,2), avgFrags.toFixed(2) ), insertNewTr(bp_table, locale.p49, filter(deaths,2), avgDeaths.toFixed(2)), insertNewTr(bp_table, locale.p50, filter(spotted,2), avgSpots.toFixed(2) ), insertNewTr(bp_table, locale.p51, "", avgHitrate ), insertNewTr(bp_table, locale.p52, filter(dmgDlt,2), avgDmg.toFixed(2) ), insertNewTr(bp_table, locale.p53, filter(dmgRec,2), avgDmgRec.toFixed(2)), insertNewTr(bp_table, locale.p54, filter(caps,2), avgCap.toFixed(2) ), insertNewTr(bp_table, locale.p55, filter(defs,2), avgDef.toFixed(2) ), insertNewTr(bp_table, locale.p56, "", avgTier.toFixed(2) ); // cake diagrams - adding tier diagram var diagramsSector_class = document.getElementsByClassName('b-diagrams-sector')[0]; diagramsTier_div = document.createElement('div'), diagramsTier_div.className = "b-diagram-block b-diagram-tiers js-diagram-block"; diagramsTier_div.innerHTML = "

"+locale.p57+"

"+vehAmount+"
"; diagramsSector_class.firstElementChild.parentNode.insertBefore(diagramsTier_div, diagramsSector_class.firstElementChild.nextSibling); diagramsTier_table = document.createElement('table'), diagramsTier_table.className = "t-dotted t-dotted__diagram js-diagram-mechanism-legend"; diagramsTier_table.innerHTML = ""; diagramsTier_div.appendChild(diagramsTier_table); diagramsTier_td = 0; diagramsTierColorArr = ["496877","2b591f","831818","303766","814f07","1A775F","B0D23A","763D46","936C19","471952"]; for (var i in vehTiersObj) { diagramsTierColor = diagramsTierColorArr[diagramsTier_td]; diagramsTier_td += 1; if (vehTiersObj[i].c !== 0) { battleRate = (vehTiersObj[i].b/battles*100).toFixed(2); tierRate = (vehTiersObj[i].c/vehAmount*100).toFixed(2); diagramsTier_table.firstElementChild.innerHTML += ""+filter(vehTiersObj[i].b,3)+"("+battleRate+"%)"+vehTiersObj[i].c+"("+tierRate+"%)"+locale.p58+" "+diagramsTier_td+"#"+diagramsTierColor+""; } } diagramsSector_class.firstElementChild.innerHTML += "

"+locale.p59+" "+vehAmount+"

"; // fix for cake diagram in chrome if (chrome) { $('.js-diagram-block').each(function() { var items = [], values = [], labels = [], colors = [], results = [], legend, result, holder; holder = $('.b-diagram', this).attr('id'); $('.js-diagram-mechanism-legend tr', this).each(function () { items.push($(this)); values.push(parseInt($('.js-value', this).text(), 10)); labels.push($('.js-label', this).text()); colors.push($('.js-colors', this).text()); results.push($('.js-results', this).text()); legend = $('.js-diagram-mechanism-legend'); result = $('#' + holder).next().find('.js-result'); }); Raphael(holder, 630, 630).pieChart(65, 65.5, 53.5, items, values, colors, results, legend, result); }); } // achievements wrapper var medal_div = document.createElement('div'); medal_div.className = "b-achievements-wrpr"; medalHeader_div = document.createElement('div'); medalHeader_div.className = "b-head-block"; medalHeader_class = document.getElementsByClassName('js-achievements-header')[0]; medalHeader_div.appendChild(medalHeader_class); medal_div.appendChild(medalHeader_div); medalClassArr = ["js-achievements-header","b-profile-item-empty","js-achivements-showhide","js-short-achievements","js-full-achievements"]; for (i=1; i"+locale.p61+""; vehicles_div.appendChild(vehiclesHeader_div); vehTable_class.parentNode.insertBefore(vehicles_div, vehTable_class); vehicles_div.appendChild(vehTable_class); // add a premium tanks table to the vehicle table if (premArr.length === 0) { premHBody = document.createElement('tbody'); premHBody.innerHTML = ""+locale.p62+" –––"; vehTable_class.appendChild(premHBody); } else { premHBody = document.createElement('tbody'); premHBody.className = "tablesorter-no-sort"; premHBody.innerHTML = ""+locale.p62+" "+premArr.length+""+filter(premBattlesTotal,3)+""+filter(premWinsTotal,3)+" - "+colStat((premWinsTotal/premBattlesTotal)*100, "wr", 0, "pct")+""+premBadgesTotal+""; vehTable_class.appendChild(premHBody); premTBody = document.createElement('tbody'); premTBody.className = "sortable"; premTBody.style.display="none"; vehTable_class.appendChild(premTBody); for (i=0; i–––"; vehTable_class.appendChild(tenHBody); } else { tenHBody = document.createElement('tbody'); tenHBody.className = "tablesorter-no-sort"; tenHBody.innerHTML = ""+locale.p68+" "+tenArr.length+""+filter(tenBattlesTotal,3)+""+filter(tenWinsTotal,3)+" - "+colStat((tenWinsTotal/tenBattlesTotal)*100, "wr", 0, "pct")+""+tenBadgesTotal+""; vehTable_class.appendChild(tenHBody); tenTBody = document.createElement('tbody'); tenTBody.className = "sortable"; tenTBody.style.display="none"; vehTable_class.appendChild(tenTBody); for (i=0; i
"+locale.p63+"
"; // noobmeter retrieval if (nm_srv !== null) { // retrieve and process info var nmapi_url = nm_host+"/simpleplayerprapi/"+nm_srv+"/"+nick+"/"+userid+"/"+sid; gRecProps = [ { url: nmapi_url, handler: nmHnd, onerror: nmHnd_error, nav: true } ]; // delayed insertion for (i=0; i"; } // end speed_table_battles } // end wg_accounts // matches url with clan page else if (wg_clans !== null) { // style variables var box_background = "background: url('/static/3.13.0.2.1/common/css/scss/layout/img/ui-bg-top.jpg'); border: 1px solid rgba(255, 255, 255, 0.05); box-shadow: 0 0 38px 1px rgba(0, 0, 0, 0.3) inset, 0 0 23px 1px rgba(255, 255, 255, 0.02), 0 0 5px 1px rgba(0, 0, 0, 0.5) inset;"; input_background = "background: rgba(0, 0, 0, 0.09); border: 1px solid #000000; box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.15) inset, 0 0 38px 1px rgba(0, 0, 0, 0.3) inset, 0 0 23px 1px rgba(255, 255, 255, 0.02), 0 0 5px 1px rgba(0, 0, 0, 0.5) inset; color: #606061;"; // style contents var style = document.createElement('style'); style.className = "wotstatscript"; style.type ="text/css"; style.innerHTML // global rules = "p {margin: 0;}" // l-page fix page slowdown + ".l-page {background-position: center 0 !important;}" // l-content width + ".l-content-indent, .reg-RUS .l-content-indent, .reg-KR .l-content-indent {padding: 0;}" + ".l-content {margin: 0 22px 25px; width: 955px;}" // b-clan-wrapper + ".b-clan-wrapper {overflow: auto;}" // b-clan-header rules + ".b-background-clan-profile {left: -22px; top: 0;}" + ".b-background-clan-profile, .b-background-clan-profile img {height: auto; margin-bottom: -2px; width: 1000px;}" + ".b-clan-header {width: 745px;}" + ".b-scriptlink {"+input_background+" position: absolute; right: 0px; text-align: center; top: -1px; padding: 7px 0 6px; width: 199px;}" + ".reg-KR .b-scriptlink {line-height: 133%;}" + ".b-clan-profile {padding: 15px 0 0;}" + ".b-clan-profile .b-wrap {padding: 0;}" + ".b-clan-victory-points {margin: 0; width: auto;}" + ".b-text-info {margin: 0;}" + ".b-clan-profile h2 {overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}" + ".b-text-info_motto {font-size: 16px; margin: 0;}" // b-clan-desc rules + ".b-clan-desc {float: left; margin: 15px 0 0; min-height: 370px; width: 745px;}" // b-clan-stat rules + ".b-clan-stat {border-top: 1px solid #010101; box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.05) inset; padding: 5px 0 5px;}" + ".b-clan-stat li {padding: 1px 3px 1px 19px;}" + ".b-clan-stat li.b-clan-stat-header {background: url('/static/3.13.0.2.1/common/css/scss/context-menu/img/active-point.png') repeat-y; font-weight: bold; margin: 5px 2px 0; padding: 2px 3px 2px 19px;}" // b-clan-buttons rules + ".l-content > form {height: 100%; position: fixed; top: 0;}" + ".b-clan-buttons {bottom: 0; padding: 10px 0; position: absolute; text-align: center; width: 953px;}" + ".b-clan-buttons {"+box_background+"}" + ".b-clan-buttons .b-button {margin-bottom: 0;}" // sidebar rules + ".l-sidebar {margin: 0; position: absolute; right: 0; top: 25px; width: auto;}" + ".b-context-menu {background: url("+uri_context_menu+") repeat-y; border-right: 1px solid black; margin: 0; width: 200px;}" + ".b-context-menu_wrapper {padding: 10px 0 0;}" + ".b-context-menu_btn {margin: 10px 0 0;}" + ".b-sidebar-widget {margin: 0; position: absolute; right: -228px; top: -26px; width: 203px;}" + ".b-sidebar-widget h2 { color: #FFFFFF; font: 18px/22px 'WarHeliosCondCBold','Arial Narrow',arial,sans-serif; margin: 0 0 11px; text-transform: uppercase;}" // footer rules + ".b-footer, .reg-RUS .b-footer {height: 285px; margin: 0 auto; position: static;}" + ".reg-KR .b-footer {background-size: 100% 100%; height: 360px; margin-top: -2px;}" + ""; document.head.appendChild(style); // end style // clan wrapper var clanWrpr_div = document.createElement('div'); clanWrpr_div.className = "b-clan-wrapper", background_class = document.getElementsByClassName('b-background-clan-profile')[0]; background_class.parentNode.insertBefore(clanWrpr_div, background_class.nextSibling); clanHead_div = document.createElement('div'); clanHead_div.className = "b-clan-header", clanHead_div.innerHTML += scriptlink; infoWrapper_class = document.getElementsByClassName('b-wrap')[0]; clanHead_div.appendChild(infoWrapper_class); clanWrpr_div.appendChild(clanHead_div); // clan description clanDesc_div = document.getElementsByClassName('b-clan-profile')[0].children[2]; clanDesc_div.className = "b-clan-desc"; clanWrpr_div.appendChild(clanDesc_div); // move sidebar var sidebar_class = document.getElementsByClassName('l-sidebar')[0]; clanWrpr_div.appendChild(sidebar_class); // clan statistic links var clan_id = document.location.href.match(/\/(\d+)/)[1]; clan_name = document.location.href.match(/\-([\w.+\-]+)/)[1]; sidebar_class = document.getElementsByClassName('b-context-menu_wrapper')[0]; clanStat_div = document.createElement('ul'); clanStat_div.className = "b-context-menu-list b-clan-stat", wl_clan = nm_clan = mws_clan = wotcs_clan = replays = ""; if (wl_srv !== null) { wl_clan = "
  • WoTLabs
  • "; } if (nm_srv !== null) { nm_clan = "
  • Noobmeter
  • "; wotcs_clan = "
  • WoT-CS
  • "; } if (mws_srv !== null) { mws_clan = "
  • MyWOTStats
  • "; } if (wr_srv !== null) { replays = "
  • WoTReplays
  • "; } clanStat = wl_clan+nm_clan+mws_clan+wotcs_clan+replays; clanStat_div.innerHTML = "
  • "+locale.c01+"
  • "+clanStat; sidebar_class.appendChild(clanStat_div); } // end wg_clans // helper functions // filter function filter(input, type) { var inputStr = input.toString(); switch(type) { case (1): output = parseFloat(inputStr.replace(/[^\d]/g,"")); if (isNaN(output)) {return 0;} else {return output;} // string into integer case (2): return inputStr.replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1 "); // output with spaces case (3): return inputStr.replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,"); // output with commas case (4): return inputStr.replace(/[^\w]/g,""); // remove all symbols default: console.log("error filtering: ", input); return input; } } // colouring function colStat(input, type, dec, set, ext) { color = ""; output = input.toFixed(dec); if (type == "bat") { output = filter(input,2); } if (set == "pct") { output += "%"; } if (ext || ext == "0") { input = 100-(input+(ext*100)); } if (type !== "") { for (var i=0; i= colStatArr[i][type]) { var color = colStatArr[i].color; break; } } } if (type == "wn8") { background_div.style.background = "#"+color; } return ""+output+""; } // quick insertion of row into tables function insertNewTr(table_parent, text_td, val_td, val2_td) { var trNew = document.createElement('tr'); var tdNew_text = document.createElement('td'); tdNew_text.innerHTML = text_td; tdNew_text.className = "t-dotted_minor"; var tdNew_value = document.createElement('td'); tdNew_value.innerHTML = val_td; tdNew_value.className = "t-dotted_value"; table_parent.appendChild(trNew); trNew.appendChild(tdNew_text); trNew.appendChild(tdNew_value); if (table_parent == mb_table) { tdNew_text.className = "t-dotted_class-ico t-dotted_minor__middle"; tdNew_value.className = "t-dotted_minor t-dotted_minor__middle"; } if (val2_td !== "") { var tdNew_value2 = document.createElement('td'); tdNew_value2.innerHTML = val2_td; tdNew_value2.className = "t-dotted_value"; if (table_parent == mb_table) { tdNew_value2.className = "t-dotted_value t-dotted_minor__middle"; } trNew.appendChild(tdNew_value2); } return trNew; } // end helper functions // clan handler function clanHnd() { var cc_class = document.getElementById('js-clan-block-container'); cc_classCheckSeq = 0; cc_classChecker = setInterval(function() { cc_classCheckSeq += 1; ci_class = document.getElementById('js-profile-clan'); ct_class = document.getElementById('js-profile-clan-table'); vp_class = document.getElementsByClassName('b-victory-points')[0]; pn_class = document.getElementsByClassName('js-profile-name')[0]; if (ci_class !== null && ct_class == null) { // clan info cl_class = ci_class.getElementsByTagName('a')[1]; clan_id = cl_class.getAttribute('href').match(/\/(\d+)/)[1]; clan_name = cl_class.getElementsByTagName('span')[0].innerHTML.match(/[\w.+\-]+/)[0]; // move victory points if (vp_class) { pn_class.appendChild(vp_class); vp_class.style.display="inline-block"; } // clan statistic links wl_clan = nm_clan = wn_clan = mws_clan = wotcs_clan = replays = ""; if (wl_srv !== null) { wl_clan = "WoTLabs"; } if (nm_srv !== null) { nm_clan = "Noobmeter"; wotcs_clan = "WoT-CS"; } if (wn_srv !== null) { wn_clan = "Wot-news"; } if (mws_srv !== null) { mws_clan = "MyWOTStats"; } if (wr_srv !== null) { replays = ""+locale.p67+"WoTReplays"; } clanstat = ""+locale.p66+""+wl_clan+nm_clan+wn_clan+""+mws_clan+wotcs_clan+""+replays+""; cc_class.innerHTML += ""+clanstat+"
    "; profileName_class.parentNode.insertBefore(cc_class, profileName_class.nextSibling); clearInterval(cc_classChecker); } else if (cc_classCheckSeq == 5 || ct_class !== null) { clearInterval(cc_classChecker); } }, 2500); } // noobmeter handler function nmHnd(response) { if (response.statusText == "OK") { var nmpr = parseFloat(response.responseText); if (isNaN(nmpr)) { var nm_fmt = "No Rating"; } else { var nm_fmt = colStat(nmpr,"nm",2); } nmHnd_insert(nm_fmt, nmpr); } else { nmHnd_error(); } } function nmHnd_error() { nmHnd_insert("No Rating"); console.log("error retrieving NoobMeter data"); return null; } function nmHnd_insert(nm_fmt, nmpr) { ratingsInfo_div = document.getElementsByClassName('js-noobmeter')[1]; ratingsClip_div = document.getElementsByClassName('js-noobmeter')[0]; ratingsInfo_div.innerHTML = nm_fmt; ratingsClip_div.innerHTML += " NM: "+nmpr.toFixed(2); } // end noobmeter handler // retrieval function function gRec(doc) { var resp; GM_xmlhttpRequest({ method: "GET", url: doc.url, headers: { "Accept": "text/xml" }, onload: function(resp) { if (resp.readyState == 4) { if (resp.status == 200) { doc.handler(resp); } } }, onerror: function() { doc.onerror(); } }); } // global functions inserted into head // clipboard helper function copyClipboard() { text = document.getElementsByClassName('ratingsClip-holder')[0].innerHTML; locale = document.getElementsByClassName('ratingsClip-holder')[1].innerHTML; window.prompt(locale, text); } // end global functions // end script