// ==UserScript==
// @name WoTStatScript
// @version 0.9.3.985
// @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
// @include /^http://worldoftanks\.(eu|com|ru|asia|kr)//
// @grant GM_xmlhttpRequest
// @license MIT License
// @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?showtopic=263423",
version = "0.9.3.985",
nm_id = "orrie_js_174043", // noobmeter api id
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+/),
wg_clans = wg_path.match(/\/clans\/[\d]+\//g);
// determine browser types, beware inconsistencies, no method is reliable.
var navGecko = /Mozilla/.test(navigator.appCodeName), // true for ff (and chrome lol)
navOpera = /Opera/.test(navigator.appName), // only true for opera
navChrome = /Chrome/.test(navigator.userAgent);
if (navOpera || navChrome) { navGecko = false; }
// globally inserting functions into head as scripts
var scripts = [copyClipboard];
for (var i=0; i 0) {
// getting userinfo
var nick = document.getElementsByTagName('h1')[0].innerHTML,
userid = document.location.href.match(/\/(\d+)/)[1];
// 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%;}"
// background image fix
+ "#js-background-parallax-translate3d-wrapper {z-index: -1;}"
// 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;}" // default 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("+cssUrl.c01+") no-repeat 0 2px; color: #CACBCC; padding: 0 0 0 10px;}"
+ ".b-profile-wrpr table a:hover {background: url("+cssUrl.c01+") no-repeat -244px 2px; color: #FFFFFF;}"
+ ".b-profile-header {position: absolute; right: 0; top: 0;}"
+ ".b-scriptlink {"+cssUrl.input+" 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 {"+cssUrl.input+" display: block; 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("+cssUrl.c02+"); 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 {margin: 0;}"
+ ".b-sidebar-widget_title {margin: 0 0 10px;}"
+ ".b-sidebar-widget_text {margin: 0 0 5px;}"
+ ".b-box-shadow.js-recruitstation-recommended-widget {margin: 0; width: 242px;}"
// userblock wrapper rules
+ ".b-userblock-wrpr {margin: 0 0 -2px;}"
+ ".b-user-block {"+cssUrl.box+" margin: 0; width: 750px;}"
+ ".b-head-block {background: url("+cssUrl.c03+") 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("+cssUrl.c05+") 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("+cssUrl.c06+"), url("+cssUrl.c04+"); 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 tr:hover td {color: #79797A;}"
+ ".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 .t-dotted__fixed {table-layout: auto;}"
+ ".b-result-classes {margin: 0 10px; width: 265px;}"
+ ".b-result-classes span {color: #606061; display: inline-block; width: 48px;}"
+ ".t-dotted td {background: url("+cssUrl.c05+") 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: 45px;}"
+ ".js-full-achievements #js-achivement-histBattle2_battlefield {margin-left: 245px;}"
+ ".js-full-achievements #js-achivement-tacticalBreakthrough {margin-left: 165px;}"
+ ".js-full-achievements #js-achivement-rangerMedal {margin-left: 165px;}"
+ ".js-full-achievements #js-achivement-infiltratorMedal {margin-right: 50px;}"
+ ".js-full-achievements #js-achivement-reliableComrade {margin-left: 45px;}"
+ ".js-full-achievements #js-achivement-medalKay {margin-left: 85px;}"
+ ".js-full-achievements #js-achivement-battleTested {margin-left: 125px;}"
+ ".js-full-achievements #js-achivement-noMansLand {margin-left: 85px;}"
+ ".js-full-achievements #js-achivement-demolition {margin-left: 125px;}"
// global rating rules
+ ".b-composite-heading {margin: 20px 0 15px 400px; width: 553px;}"
+ ".b-profile-ratings-date {margin-top: 1px}"
+ ".b-leadership-info {display: table; margin: 0 auto;}"
+ ".b-profile-link {display: table; margin: 14px auto 0}"
+ ".b-msg-important__rating {display: table; margin: 5px auto 0;}"
+ ".b-rating-dial__user {display: table; margin: 30px auto 22px;}"
+ ".b-orange-arrow__leadership {display: table; margin: 0 auto;}"
+ ".b-leadership-rating-text {text-align: center;}"
+ ".l-leadership-info-alignment {text-align: center;}"
// 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("+cssUrl.c04+"); 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;}"
+ ".t-profile .t-profile_tankstype td.t-profile_center div.hidden {display: none;}"
+ ".t-profile .t-profile_tankstype td.t-profile_center span {display: inline-block; margin-left: 10px; text-align: left; width: 40px;}"
+ ".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("+cssUrl.c07+") no-repeat; padding: 0 10px;}"
+ ".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); "+cssUrl.box+" 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
// formula calculations and variables
// expected tank values v16 with premium tanks up to 0.9.3
var statArr = {
"ms-1": { title:"MS-1", id:3329, tier:1, nation:"RU", type:"LT", frag:1.97, dmg:255.42, spot:1.46, def:1.55, win:59.21 },
"bt-2": { title:"BT-2", id:1025, tier:2, nation:"RU", type:"LT", frag:1.60, dmg:272.05, spot:2.05, def:1.32, win:58.88 },
"t-26": { title:"T-26", id:4609, tier:2, nation:"RU", type:"LT", frag:1.67, dmg:282.63, spot:1.40, def:1.66, win:59.81 },
"t-60": { title:"T-60", id:15361, tier:2, nation:"RU", type:"LT", frag:1.60, dmg:268.38, spot:1.66, def:1.71, win:60.88 },
"tetrarch_ll": { title:"Tetrarch", id:54529, tier:2, nation:"RU", type:"LT", frag:1.69, dmg:288.85, spot:1.53, def:1.53, win:59.07, prem:1 },
"bt-7": { title:"BT-7", id:769, tier:3, nation:"RU", type:"LT", frag:0.88, dmg:221.54, spot:2.04, def:1.17, win:54.81 },
"t-46": { title:"T-46", id:3073, tier:3, nation:"RU", type:"LT", frag:1.12, dmg:270.46, spot:1.44, def:1.03, win:56.41 },
"t-70": { title:"T-70", id:15105, tier:3, nation:"RU", type:"LT", frag:1.46, dmg:345.72, spot:1.50, def:1.71, win:58.73 },
"bt-sv": { title:"BT-SV", id:52225, tier:3, nation:"RU", type:"LT", frag:1.73, dmg:358.45, spot:2.41, def:1.71, win:61.02, prem:1 },
"m3_stuart_ll": { title:"M3 Light", id:52737, tier:3, nation:"RU", type:"LT", frag:1.02, dmg:230.34, spot:1.73, def:1.12, win:53.38, prem:1 },
"t-127": { title:"T-127", id:53505, tier:3, nation:"RU", type:"LT", frag:1.80, dmg:375.49, spot:1.79, def:1.81, win:60.00, prem:1 },
"ltp": { title:"LTP", id:56577, tier:3, nation:"RU", type:"LT", frag:1.45, dmg:311.86, spot:1.51, def:1.60, win:57.94, prem:1 },
"a-20": { title:"A-20", id:2049, tier:4, nation:"RU", type:"LT", frag:0.71, dmg:258.38, spot:2.29, def:0.75, win:53.76 },
"t-50": { title:"T-50", id:9473, tier:4, nation:"RU", type:"LT", frag:0.76, dmg:280.68, spot:2.93, def:0.71, win:55.84 },
"t80": { title:"T-80", id:15873, tier:4, nation:"RU", type:"LT", frag:1.14, dmg:387.64, spot:1.76, def:1.44, win:58.81 },
"valentine_ll": { title:"Valentine II", id:52481, tier:4, nation:"RU", type:"LT", frag:1.46, dmg:409.05, spot:1.55, def:1.69, win:57.35, prem:1 },
"mt25": { title:"MT-25", id:16641, tier:6, nation:"RU", type:"LT", frag:0.52, dmg:358.30, spot:3.75, def:0.59, win:53.76 },
"r107_ltb": { title:"LTTB", id:18433, tier:7, nation:"RU", type:"LT", frag:0.60, dmg:670.70, spot:2.12, def:0.67, win:52.21 },
"r109_t54s": { title:"T-54 lightweight", id:18177, tier:8, nation:"RU", type:"LT", frag:0.57, dmg:744.28, spot:2.81, def:0.60, win:51.00 },
"t-28": { title:"T-28", id:1537, tier:4, nation:"RU", type:"MT", frag:1.11, dmg:415.39, spot:1.27, def:0.91, win:56.52 },
"a-32": { title:"A-32", id:52993, tier:4, nation:"RU", type:"MT", frag:0.85, dmg:279.07, spot:2.51, def:0.56, win:54.00, prem:1 },
"t-34": { title:"T-34", id:1, tier:5, nation:"RU", type:"MT", frag:1.11, dmg:517.37, spot:1.46, def:1.08, win:55.37 },
"matilda_ii_ll": { title:"Matilda IV", id:51457, tier:5, nation:"RU", type:"MT", frag:1.37, dmg:578.09, spot:1.20, def:1.45, win:57.88, prem:1 },
"t-34-85": { title:"T-34-85", id:2561, tier:6, nation:"RU", type:"MT", frag:1.02, dmg:734.29, spot:1.45, def:0.97, win:54.86 },
"a43": { title:"A-43", id:12289, tier:6, nation:"RU", type:"MT", frag:1.05, dmg:692.00, spot:2.07, def:1.02, win:54.65 },
"r108_t34_85m": { title:"T-34-85M", id:58113, tier:6, nation:"RU", type:"MT", frag:1.05, dmg:692.00, spot:2.07, def:1.02, win:54.65, prem:1 },
"t-43": { title:"T-43", id:6657, tier:7, nation:"RU", type:"MT", frag:0.94, dmg:877.77, spot:1.58, def:1.02, win:54.16 },
"kv-13": { title:"KV-13", id:8961, tier:7, nation:"RU", type:"MT", frag:0.84, dmg:773.72, spot:1.55, def:0.90, win:53.38 },
"a44": { title:"A-44", id:12545, tier:7, nation:"RU", type:"MT", frag:1.01, dmg:960.36, spot:1.74, def:0.83, win:53.29 },
"t44_122": { title:"T-44-122", id:56833, tier:7, nation:"RU", type:"MT", frag:0.84, dmg:773.72, spot:1.55, def:0.90, win:53.38, prem:1 },
"t44_85": { title:"T-44-85", id:57089, tier:7, nation:"RU", type:"MT", frag:0.84, dmg:773.72, spot:1.55, def:0.90, win:53.38, prem:1 },
"t-44": { title:"T-44", id:4353, tier:8, nation:"RU", type:"MT", frag:0.83, dmg:1023.00, spot:1.68, def:0.88, win:52.80 },
"object416": { title:"Object 416", id:13313, tier:8, nation:"RU", type:"MT", frag:1.03, dmg:1272.06, spot:1.46, def:0.96, win:52.66 },
"t-54": { title:"T-54", id:7937, tier:9, nation:"RU", type:"MT", frag:0.97, dmg:1488.09, spot:1.84, def:0.82, win:51.62 },
"r104_object_430_ii": { title:"Object 430 Version II", id:17665, tier:9, nation:"RU", type:"MT", frag:1.04, dmg:1562.99, spot:1.61, def:0.85, win:53.38 },
"t62a": { title:"T-62A", id:13825, tier:10, nation:"RU", type:"MT", frag:0.92, dmg:1688.72, spot:1.64, def:0.76, win:48.61 },
"object_907": { title:"Object 907", id:15617, tier:10, nation:"RU", type:"MT", frag:1.00, dmg:1811.66, spot:1.74, def:0.85, win:49.66, prem:1 },
"object_140": { title:"Object 140", id:16897, tier:10, nation:"RU", type:"MT", frag:1.00, dmg:1811.66, spot:1.74, def:0.85, win:49.66 },
"object_430": { title:"Object 430", id:17153, tier:10, nation:"RU", type:"MT", frag:0.97, dmg:1764.19, spot:1.72, def:0.82, win:50.91 },
"kv1": { title:"KV-1", id:11777, tier:5, nation:"RU", type:"HT", frag:1.22, dmg:633.84, spot:0.88, def:1.01, win:54.39 },
"kv-1s": { title:"KV-1S", id:18689, tier:5, nation:"RU", type:"HT", frag:1.22, dmg:633.84, spot:0.88, def:1.01, win:54.39 },
"kv-220": { title:"KV-220 Beta-Test", id:51201, tier:5, nation:"RU", type:"HT", frag:1.51, dmg:695.47, spot:1.41, def:1.37, win:60.86, prem:1 },
"churchill_ll": { title:"Churchill III", id:51713, tier:5, nation:"RU", type:"HT", frag:1.28, dmg:610.58, spot:1.20, def:1.31, win:55.13, prem:1 },
"kv-220_action": { title:"KV-220", id:54017, tier:5, nation:"RU", type:"HT", frag:1.51, dmg:695.47, spot:1.41, def:1.37, win:60.86, prem:1 },
"r106_kv85": { title:"KV-85", id:2817, tier:6, nation:"RU", type:"HT", frag:1.19, dmg:913.65, spot:1.15, def:0.77, win:55.16 },
"kv2": { title:"KV-2", id:10497, tier:6, nation:"RU", type:"HT", frag:1.15, dmg:881.17, spot:0.73, def:0.74, win:54.54 },
"t150": { title:"T-150", id:11265, tier:6, nation:"RU", type:"HT", frag:1.04, dmg:806.38, spot:0.91, def:0.80, win:54.16 },
"is": { title:"IS", id:513, tier:7, nation:"RU", type:"HT", frag:1.04, dmg:1077.93, spot:1.08, def:0.77, win:53.37 },
"kv-3": { title:"KV-3", id:5889, tier:7, nation:"RU", type:"HT", frag:1.06, dmg:1123.49, spot:0.89, def:0.77, win:53.89 },
"is-3": { title:"IS-3", id:5377, tier:8, nation:"RU", type:"HT", frag:0.95, dmg:1335.42, spot:1.06, def:0.77, win:51.95 },
"object252": { title:"IS-6", id:9217, tier:8, nation:"RU", type:"HT", frag:1.12, dmg:1432.59, spot:1.19, def:0.84, win:53.58, prem:1 },
"kv4": { title:"KV-4", id:11009, tier:8, nation:"RU", type:"HT", frag:0.84, dmg:1209.84, spot:0.85, def:0.73, win:52.15 },
"kv-5": { title:"KV-5", id:53249, tier:8, nation:"RU", type:"HT", frag:0.99, dmg:1262.53, spot:1.10, def:0.87, win:51.58, prem:1 },
"st_i": { title:"ST-I", id:10753, tier:9, nation:"RU", type:"HT", frag:0.96, dmg:1693.28, spot:0.97, def:0.69, win:52.41 },
"is8": { title:"IS-8", id:11521, tier:9, nation:"RU", type:"HT", frag:0.90, dmg:1544.06, spot:1.14, def:0.68, win:50.02 },
"is-4": { title:"IS-4", id:6145, tier:10, nation:"RU", type:"HT", frag:0.91, dmg:1860.92, spot:1.11, def:0.78, win:48.97 },
"is-7": { title:"IS-7", id:7169, tier:10, nation:"RU", type:"HT", frag:0.86, dmg:1772.47, spot:1.22, def:0.62, win:49.03 },
"at-1": { title:"AT-1", id:5121, tier:2, nation:"RU", type:"TD", frag:1.80, dmg:303.09, spot:0.46, def:1.48, win:58.90 },
"su-76": { title:"SU-76", id:6401, tier:3, nation:"RU", type:"TD", frag:1.62, dmg:403.07, spot:0.98, def:1.57, win:58.05 },
"su76i": { title:"SU-76I", id:54273, tier:3, nation:"RU", type:"TD", frag:1.62, dmg:403.07, spot:0.98, def:1.57, win:58.05, prem:1 },
"gaz-74b": { title:"SU-85B", id:6913, tier:4, nation:"RU", type:"TD", frag:1.56, dmg:576.53, spot:1.14, def:1.46, win:58.63 },
"su-85": { title:"SU-85", id:257, tier:5, nation:"RU", type:"TD", frag:1.20, dmg:597.66, spot:0.56, def:1.20, win:54.45 },
"su_85i": { title:"SU-85I", id:53761, tier:5, nation:"RU", type:"TD", frag:1.51, dmg:682.86, spot:0.90, def:1.65, win:54.64, prem:1 },
"su-100": { title:"SU-100", id:3585, tier:6, nation:"RU", type:"TD", frag:1.25, dmg:880.35, spot:0.82, def:1.14, win:54.74 },
"su100y": { title:"SU-100Y", id:54785, tier:6, nation:"RU", type:"TD", frag:1.28, dmg:919.67, spot:0.61, def:0.89, win:55.30, prem:1 },
"su-152": { title:"SU-152", id:2305, tier:7, nation:"RU", type:"TD", frag:1.10, dmg:1083.92, spot:0.54, def:0.85, win:52.77 },
"su100m1": { title:"SU-100M1", id:10241, tier:7, nation:"RU", type:"TD", frag:1.02, dmg:1026.93, spot:0.86, def:1.15, win:53.05 },
"su122_44": { title:"SU-122-44", id:55297, tier:7, nation:"RU", type:"TD", frag:1.26, dmg:1179.95, spot:0.82, def:0.97, win:54.45, prem:1 },
"isu-152": { title:"ISU-152", id:7425, tier:8, nation:"RU", type:"TD", frag:1.20, dmg:1595.84, spot:0.57, def:0.80, win:51.47 },
"su-101": { title:"SU-101", id:9985, tier:8, nation:"RU", type:"TD", frag:0.98, dmg:1251.74, spot:0.95, def:1.00, win:50.21 },
"object_704": { title:"Object 704", id:8193, tier:9, nation:"RU", type:"TD", frag:1.25, dmg:2067.15, spot:0.70, def:0.83, win:51.49 },
"su122_54": { title:"SU-122-54", id:12033, tier:9, nation:"RU", type:"TD", frag:0.98, dmg:1542.76, spot:0.92, def:0.86, win:49.48 },
"object268": { title:"Object 268", id:13569, tier:10, nation:"RU", type:"TD", frag:1.19, dmg:2327.73, spot:0.85, def:0.77, win:49.09 },
"object263": { title:"Object 263", id:14337, tier:10, nation:"RU", type:"TD", frag:1.14, dmg:2187.70, spot:0.99, def:0.85, win:50.02 },
"su-18": { title:"SU-18", id:3841, tier:2, nation:"RU", type:"SP", frag:1.31, dmg:247.48, spot:0.14, def:1.78, win:53.60 },
"su-26": { title:"SU-26", id:7681, tier:3, nation:"RU", type:"SP", frag:1.60, dmg:598.92, spot:0.13, def:2.10, win:58.09 },
"su-5": { title:"SU-5", id:4865, tier:4, nation:"RU", type:"SP", frag:1.16, dmg:678.29, spot:0.10, def:1.68, win:53.08 },
"su122a": { title:"SU-122A", id:16385, tier:5, nation:"RU", type:"SP", frag:1.03, dmg:580.15, spot:0.09, def:1.31, win:53.22 },
"su-8": { title:"SU-8", id:5633, tier:6, nation:"RU", type:"SP", frag:1.14, dmg:1141.03, spot:0.06, def:1.32, win:52.15 },
"s-51": { title:"S-51", id:1793, tier:7, nation:"RU", type:"SP", frag:0.95, dmg:1322.14, spot:0.05, def:0.82, win:50.10 },
"su14_1": { title:"SU-14-1", id:16129, tier:7, nation:"RU", type:"SP", frag:0.94, dmg:1094.20, spot:0.04, def:0.84, win:52.27 },
"su-14": { title:"SU-14-2", id:4097, tier:8, nation:"RU", type:"SP", frag:1.01, dmg:1432.37, spot:0.02, def:0.72, win:50.37 },
"object_212": { title:"212A", id:8449, tier:9, nation:"RU", type:"SP", frag:1.00, dmg:1664.29, spot:0.03, def:0.68, win:49.34 },
"object_261": { title:"Object 261", id:8705, tier:10, nation:"RU", type:"SP", frag:1.02, dmg:1895.94, spot:0.05, def:0.87, win:48.20 },
"ltraktor": { title:"Leichttraktor", id:3089, tier:1, nation:"DE", type:"LT", frag:1.99, dmg:264.13, spot:2.25, def:1.55, win:59.68 },
"pz35t": { title:"Pz.Kpfw. 35 (t)", id:785, tier:2, nation:"DE", type:"LT", frag:1.68, dmg:282.99, spot:1.94, def:1.65, win:60.05 },
"pzii": { title:"Pz.Kpfw. II", id:2065, tier:2, nation:"DE", type:"LT", frag:1.54, dmg:255.85, spot:2.07, def:1.49, win:58.87 },
"pzi": { title:"Pz.Kpfw. I", id:12817, tier:2, nation:"DE", type:"LT", frag:1.40, dmg:213.51, spot:2.34, def:1.31, win:58.05 },
"h39_captured": { title:"Pz.Kpfw. 38H 735 (f)", id:52497, tier:2, nation:"DE", type:"LT", frag:2.11, dmg:346.36, spot:1.91, def:2.66, win:57.00, prem:1 },
"pz38t": { title:"Pz.Kpfw. 38 (t)", id:3345, tier:3, nation:"DE", type:"LT", frag:1.56, dmg:368.61, spot:1.57, def:1.42, win:60.03 },
"pziii_a": { title:"Pz.Kpfw. III Ausf. A", id:4881, tier:3, nation:"DE", type:"LT", frag:1.20, dmg:275.43, spot:1.86, def:0.94, win:56.81 },
"pzi_ausf_c": { title:"Pz.Kpfw. I Ausf. C", id:12561, tier:3, nation:"DE", type:"LT", frag:1.17, dmg:249.93, spot:3.11, def:1.20, win:57.26 },
"pz_ii_ausfg": { title:"Pz.Kpfw. II Ausf. G", id:13073, tier:3, nation:"DE", type:"LT", frag:1.06, dmg:275.89, spot:1.88, def:1.34, win:58.92 },
"pzii_j": { title:"Pz.Kpfw. II Ausf. J", id:51729, tier:3, nation:"DE", type:"LT", frag:2.05, dmg:390.08, spot:2.02, def:2.21, win:69.25, prem:1 },
"t-15": { title:"T-15", id:54801, tier:3, nation:"DE", type:"LT", frag:1.21, dmg:276.77, spot:3.02, def:1.49, win:59.99, prem:1 },
"pzii_luchs": { title:"Pz.Kpfw. II Luchs", id:6161, tier:4, nation:"DE", type:"LT", frag:0.96, dmg:320.44, spot:2.74, def:1.02, win:57.92 },
"pz38_na": { title:"Pz.Kpfw. 38 (t) n.A.", id:8209, tier:4, nation:"DE", type:"LT", frag:0.76, dmg:276.91, spot:2.26, def:0.80, win:55.35 },
"vk1602": { title:"VK 16.02 Leopard", id:5393, tier:5, nation:"DE", type:"LT", frag:0.63, dmg:344.72, spot:2.77, def:0.74, win:54.48 },
"vk2801": { title:"VK 28.01", id:10001, tier:6, nation:"DE", type:"LT", frag:0.67, dmg:538.18, spot:2.75, def:0.52, win:53.45 },
"auf_panther": { title:"Aufklarungspanzer Panther", id:14353, tier:7, nation:"DE", type:"LT", frag:0.60, dmg:670.70, spot:2.12, def:0.67, win:52.21 },
"g103_ru_251": { title:"Spahpanzer Ru 251", id:18449, tier:8, nation:"DE", type:"LT", frag:0.57, dmg:744.28, spot:2.81, def:0.60, win:51.00 },
"pz_iv_ausfa": { title:"Pz.Kpfw. IV Ausf. A", id:17169, tier:3, nation:"DE", type:"MT", frag:1.53, dmg:335.13, spot:1.33, def:1.02, win:58.83 },
"s35_captured": { title:"Pz.Kpfw. S35 739 (f)", id:51985, tier:3, nation:"DE", type:"MT", frag:1.74, dmg:397.86, spot:1.55, def:1.78, win:61.45, prem:1 },
"g100_gtraktor_krupp": { title:"Grosstraktor - Krupp", id:59665, tier:3, nation:"DE", type:"MT", frag:1.00, dmg:1000.00, spot:1.00, def:1.00, win:50.00, prem:1 },
"pziii_ausfj": { title:"Pz.Kpfw. III", id:4369, tier:4, nation:"DE", type:"MT", frag:1.03, dmg:343.07, spot:1.98, def:0.92, win:56.34 },
"vk2001db": { title:"VK 20.01 (D)", id:13585, tier:4, nation:"DE", type:"MT", frag:1.25, dmg:418.68, spot:1.73, def:1.32, win:58.50 },
"pz_iv_ausfd": { title:"Pz.Kpfw. IV Ausf. D", id:17425, tier:4, nation:"DE", type:"MT", frag:1.14, dmg:434.74, spot:1.34, def:0.96, win:55.39 },
"pziv": { title:"Pz.Kpfw. IV", id:17, tier:5, nation:"DE", type:"MT", frag:0.91, dmg:430.43, spot:1.60, def:0.85, win:53.00 },
"pziii_iv": { title:"Pz.Kpfw. III/IV", id:6417, tier:5, nation:"DE", type:"MT", frag:0.91, dmg:430.43, spot:1.60, def:0.85, win:53.00 },
"pz_iv_ausfh": { title:"Pz.Kpfw. IV Ausf. H", id:18193, tier:5, nation:"DE", type:"MT", frag:1.39, dmg:643.29, spot:1.45, def:0.98, win:57.15 },
"t-25": { title:"T-25", id:54545, tier:5, nation:"DE", type:"MT", frag:1.17, dmg:574.72, spot:1.59, def:1.21, win:55.97, prem:1 },
"pziv_hydro": { title:"Pz.Kpfw. IV hydrostat.", id:55057, tier:5, nation:"DE", type:"MT", frag:1.35, dmg:621.71, spot:1.28, def:1.54, win:54.27, prem:1 },
"vk3001p": { title:"VK 30.01 (P)", id:7185, tier:6, nation:"DE", type:"MT", frag:0.93, dmg:674.87, spot:1.29, def:0.83, win:52.70 },
"vk3002db_v1": { title:"VK 30.01 (D)", id:14097, tier:6, nation:"DE", type:"MT", frag:1.06, dmg:741.79, spot:1.69, def:1.09, win:54.56 },
"vk3002m": { title:"VK 30.02 (M)", id:15889, tier:6, nation:"DE", type:"MT", frag:1.01, dmg:745.57, spot:1.43, def:1.04, win:52.19 },
"pzv_pziv": { title:"Pz.Kpfw. V/IV", id:51473, tier:6, nation:"DE", type:"MT", frag:0.65, dmg:438.16, spot:1.64, def:0.73, win:49.65, prem:1 },
"pzv_pziv_ausf_alfa": { title:"Pz.Kpfw. V/IV Alpha", id:54033, tier:6, nation:"DE", type:"MT", frag:0.65, dmg:438.16, spot:1.64, def:0.73, win:49.65, prem:1 },
"pziv_schmalturm": { title:"Pz.Kpfw. IV Schmalturm", id:57361, tier:6, nation:"DE", type:"MT", frag:1.00, dmg:747.55, spot:1.09, def:1.29, win:52.30, prem:1 },
"pzv": { title:"Panther", id:1297, tier:7, nation:"DE", type:"MT", frag:0.87, dmg:882.81, spot:1.21, def:1.19, win:52.57 },
"vk3002db": { title:"VK 30.02 (D)", id:4113, tier:7, nation:"DE", type:"MT", frag:0.93, dmg:854.99, spot:1.59, def:1.00, win:52.21 },
"panther_m10": { title:"Panther/M10", id:57617, tier:7, nation:"DE", type:"MT", frag:0.94, dmg:872.46, spot:1.27, def:1.23, win:52.23, prem:1 },
"panther_ii": { title:"Panther II", id:8465, tier:8, nation:"DE", type:"MT", frag:0.82, dmg:1077.16, spot:1.36, def:0.92, win:51.99 },
"indien_panzer": { title:"Indien-Panzer", id:13841, tier:8, nation:"DE", type:"MT", frag:0.86, dmg:1164.14, spot:1.23, def:1.03, win:50.29 },
"e-50": { title:"E 50", id:10257, tier:9, nation:"DE", type:"MT", frag:0.89, dmg:1474.01, spot:1.47, def:0.68, win:49.78 },
"pro_ag_a": { title:"Leopard Prototyp A", id:14865, tier:9, nation:"DE", type:"MT", frag:0.86, dmg:1453.44, spot:1.43, def:0.90, win:48.76 },
"e50_ausf_m": { title:"E 50 Ausf. M", id:12305, tier:10, nation:"DE", type:"MT", frag:0.91, dmg:1798.23, spot:1.46, def:0.70, win:48.13 },
"leopard1": { title:"Leopard 1", id:14609, tier:10, nation:"DE", type:"MT", frag:0.95, dmg:1814.00, spot:1.70, def:0.91, win:47.76 },
"dw_ii": { title:"Durchbruchswagen 2", id:13329, tier:4, nation:"DE", type:"HT", frag:1.14, dmg:401.32, spot:0.99, def:1.21, win:53.88 },
"b-1bis_captured": { title:"Pz.Kpfw. B2 740 (f)", id:52241, tier:4, nation:"DE", type:"HT", frag:1.82, dmg:522.40, spot:1.68, def:1.79, win:60.95, prem:1 },
"vk3001h": { title:"VK 30.01 (H)", id:2577, tier:5, nation:"DE", type:"HT", frag:1.07, dmg:670.91, spot:1.30, def:1.11, win:53.76 },
"vk3601h": { title:"VK 36.01 (H)", id:2321, tier:6, nation:"DE", type:"HT", frag:1.14, dmg:836.16, spot:1.29, def:1.13, win:55.06 },
"pzvi": { title:"Tiger I", id:529, tier:7, nation:"DE", type:"HT", frag:0.98, dmg:1087.54, spot:0.99, def:0.99, win:52.53 },
"pzvi_tiger_p": { title:"Tiger (P)", id:10769, tier:7, nation:"DE", type:"HT", frag:0.97, dmg:1097.37, spot:0.99, def:1.04, win:53.30 },
"pzvib_tiger_ii": { title:"Tiger II", id:5137, tier:8, nation:"DE", type:"HT", frag:0.87, dmg:1250.48, spot:1.01, def:0.84, win:50.60 },
"vk4502a": { title:"VK 45.02 (P) Ausf. A", id:10513, tier:8, nation:"DE", type:"HT", frag:0.89, dmg:1231.97, spot:1.26, def:0.84, win:50.89 },
"lowe": { title:"Lowe", id:54289, tier:8, nation:"DE", type:"HT", frag:0.83, dmg:1236.31, spot:0.87, def:0.87, win:49.19, prem:1 },
"vk4502p": { title:"VK 45.02 (P) Ausf. B", id:7441, tier:9, nation:"DE", type:"HT", frag:0.87, dmg:1510.57, spot:0.94, def:0.65, win:49.42 },
"e-75": { title:"E 75", id:9745, tier:9, nation:"DE", type:"HT", frag:0.93, dmg:1607.31, spot:1.08, def:0.70, win:50.64 },
"maus": { title:"Maus", id:6929, tier:10, nation:"DE", type:"HT", frag:0.84, dmg:1762.94, spot:0.93, def:0.71, win:49.31 },
"e-100": { title:"E 100", id:9489, tier:10, nation:"DE", type:"HT", frag:0.94, dmg:1950.62, spot:1.03, def:0.53, win:49.56 },
"vk7201": { title:"VK 72.01 (K)", id:58641, tier:10, nation:"DE", type:"HT", frag:0.97, dmg:2002.65, spot:1.13, def:0.49, win:49.11, prem:1 },
"panzerjager_i": { title:"Panzerjager I", id:3601, tier:2, nation:"DE", type:"TD", frag:2.02, dmg:330.63, spot:1.16, def:1.64, win:59.67 },
"g20_marder_ii": { title:"Marder II", id:6673, tier:3, nation:"DE", type:"TD", frag:1.46, dmg:408.98, spot:1.08, def:1.46, win:58.56 },
"hetzer": { title:"Hetzer", id:1809, tier:4, nation:"DE", type:"TD", frag:1.53, dmg:489.95, spot:0.62, def:1.15, win:56.84 },
"marder_iii": { title:"Marder 38T", id:11281, tier:4, nation:"DE", type:"TD", frag:1.51, dmg:570.94, spot:1.02, def:1.59, win:57.61 },
"g101_stug_iii": { title:"StuG III Ausf. B", id:17937, tier:4, nation:"DE", type:"TD", frag:1.47, dmg:494.21, spot:0.83, def:1.13, win:56.80 },
"stug_40_ausfg": { title:"StuG III Ausf. G", id:1041, tier:5, nation:"DE", type:"TD", frag:1.20, dmg:602.22, spot:0.75, def:1.31, win:53.70 },
"pz_sfl_ivc": { title:"Pz.Sfl. IVc", id:16145, tier:5, nation:"DE", type:"TD", frag:1.24, dmg:654.41, spot:0.81, def:1.15, win:53.07 },
"jagdpziv": { title:"Jagdpanzer IV", id:1553, tier:6, nation:"DE", type:"TD", frag:1.06, dmg:739.45, spot:0.77, def:1.18, win:52.23 },
"nashorn": { title:"Nashorn", id:11793, tier:6, nation:"DE", type:"TD", frag:1.22, dmg:949.59, spot:0.72, def:1.23, win:51.89 },
"dickermax": { title:"Dicker Max", id:57105, tier:6, nation:"DE", type:"TD", frag:1.16, dmg:868.47, spot:0.81, def:1.15, win:52.35, prem:1 },
"jagdpanther": { title:"Jagdpanther", id:3857, tier:7, nation:"DE", type:"TD", frag:1.07, dmg:1105.53, spot:0.74, def:1.04, win:52.48 },
"sturer_emil": { title:"Sturer Emil", id:11025, tier:7, nation:"DE", type:"TD", frag:1.09, dmg:1100.93, spot:0.54, def:0.98, win:50.56 },
"e-25": { title:"E 25", id:55569, tier:7, nation:"DE", type:"TD", frag:1.32, dmg:1069.09, spot:1.64, def:1.72, win:51.73, prem:1 },
"ferdinand": { title:"Ferdinand", id:7697, tier:8, nation:"DE", type:"TD", frag:1.10, dmg:1489.13, spot:0.63, def:0.95, win:50.65 },
"jagdpantherii": { title:"Jagdpanther II", id:11537, tier:8, nation:"DE", type:"TD", frag:1.14, dmg:1543.93, spot:0.81, def:0.97, win:51.07 },
"rhb_waffentrager": { title:"Rhm.-Borsig Waffentrager", id:16657, tier:8, nation:"DE", type:"TD", frag:1.32, dmg:1753.57, spot:0.64, def:1.15, win:52.16 },
"jagdtiger_sdkfz_185": { title:"8,8 cm Pak 43 Jagdtiger", id:55313, tier:8, nation:"DE", type:"TD", frag:0.98, dmg:1314.36, spot:0.77, def:1.13, win:49.84, prem:1 },
"jagdtiger": { title:"Jagdtiger", id:7953, tier:9, nation:"DE", type:"TD", frag:1.09, dmg:1839.88, spot:0.65, def:0.82, win:49.94 },
"waffentrager_iv": { title:"Waffentrager auf Pz. IV", id:16401, tier:9, nation:"DE", type:"TD", frag:1.20, dmg:1991.15, spot:0.69, def:0.94, win:50.60 },
"jagdpz_e100": { title:"Jagdpanzer E 100", id:12049, tier:10, nation:"DE", type:"TD", frag:1.09, dmg:2169.98, spot:0.67, def:0.54, win:48.90 },
"waffentrager_e100": { title:"Waffentrager auf E 100", id:16913, tier:10, nation:"DE", type:"TD", frag:1.51, dmg:2554.45, spot:0.54, def:0.84, win:50.12 },
"gw_mk_vie": { title:"G.Pz. Mk. VI (e)", id:15121, tier:2, nation:"DE", type:"SP", frag:1.22, dmg:197.01, spot:0.21, def:1.44, win:57.25 },
"bison_i": { title:"Sturmpanzer I Bison", id:2833, tier:3, nation:"DE", type:"SP", frag:1.26, dmg:398.02, spot:0.19, def:1.57, win:57.07 },
"wespe": { title:"Wespe", id:5905, tier:3, nation:"DE", type:"SP", frag:1.15, dmg:425.47, spot:0.14, def:1.77, win:53.36 },
"sturmpanzer_ii": { title:"Sturmpanzer II", id:4625, tier:4, nation:"DE", type:"SP", frag:1.10, dmg:436.26, spot:0.17, def:1.68, win:53.97 },
"pz_sfl_ivb": { title:"Pz.Sfl. IVb", id:15633, tier:4, nation:"DE", type:"SP", frag:1.23, dmg:472.60, spot:0.11, def:1.68, win:55.39 },
"grille": { title:"Grille", id:5649, tier:5, nation:"DE", type:"SP", frag:1.10, dmg:661.43, spot:0.11, def:1.57, win:52.37 },
"hummel": { title:"Hummel", id:273, tier:6, nation:"DE", type:"SP", frag:1.04, dmg:999.15, spot:0.08, def:1.32, win:50.58 },
"g_panther": { title:"G.W. Panther", id:8977, tier:7, nation:"DE", type:"SP", frag:1.01, dmg:1304.64, spot:0.05, def:1.04, win:50.15 },
"gw_tiger_p": { title:"G.W. Tiger (P)", id:15377, tier:8, nation:"DE", type:"SP", frag:0.92, dmg:1325.53, spot:0.04, def:0.67, win:49.89 },
"g_tiger": { title:"G.W. Tiger", id:8721, tier:9, nation:"DE", type:"SP", frag:0.93, dmg:1559.20, spot:0.04, def:0.63, win:48.37 },
"g_e": { title:"G.W. E 100", id:9233, tier:10, nation:"DE", type:"SP", frag:0.97, dmg:1825.65, spot:0.04, def:0.63, win:47.84 },
"t1_cunningham": { title:"T1 Cunningham", id:545, tier:1, nation:"US", type:"LT", frag:1.79, dmg:224.07, spot:2.25, def:1.35, win:59.41 },
"m2_lt": { title:"M2 Light Tank", id:1825, tier:2, nation:"US", type:"LT", frag:1.52, dmg:255.06, spot:2.63, def:1.37, win:59.68 },
"t2_lt": { title:"T2 Light Tank", id:51489, tier:2, nation:"US", type:"LT", frag:1.31, dmg:220.72, spot:2.75, def:1.20, win:58.68, prem:1 },
"t1_e6": { title:"T1E6", id:53537, tier:2, nation:"US", type:"LT", frag:1.22, dmg:213.32, spot:1.75, def:1.15, win:57.91, prem:1 },
"t7_combat_car": { title:"T7 Combat Car", id:55073, tier:2, nation:"US", type:"LT", frag:1.29, dmg:192.13, spot:2.03, def:1.38, win:59.30, prem:1 },
"m3_stuart": { title:"M3 Stuart", id:289, tier:3, nation:"US", type:"LT", frag:1.08, dmg:252.74, spot:2.49, def:1.23, win:57.21 },
"mtls_1g14": { title:"MTLS-1G14", id:52001, tier:3, nation:"US", type:"LT", frag:1.08, dmg:252.74, spot:2.49, def:1.23, win:57.21, prem:1 },
"m22_locust": { title:"M22 Locust", id:52769, tier:3, nation:"US", type:"LT", frag:1.17, dmg:276.64, spot:2.74, def:1.43, win:57.87, prem:1 },
"m5_stuart": { title:"M5 Stuart", id:5153, tier:4, nation:"US", type:"LT", frag:0.89, dmg:302.05, spot:2.65, def:1.01, win:57.16 },
"m24_chaffee": { title:"M24 Chaffee", id:9761, tier:5, nation:"US", type:"LT", frag:0.60, dmg:503.26, spot:2.72, def:0.68, win:53.10 },
"t21": { title:"T21", id:15137, tier:6, nation:"US", type:"LT", frag:0.57, dmg:474.25, spot:2.41, def:0.63, win:53.18 },
"t37": { title:"T37", id:16673, tier:6, nation:"US", type:"LT", frag:0.57, dmg:474.25, spot:2.41, def:0.63, win:53.18 },
"t71": { title:"T71", id:15649, tier:7, nation:"US", type:"LT", frag:0.69, dmg:729.92, spot:2.63, def:0.67, win:52.97 },
"m41_bulldog": { title:"M41 Walker Bulldog", id:17953, tier:7, nation:"US", type:"LT", frag:0.69, dmg:729.92, spot:2.63, def:0.67, win:52.97 },
"t49": { title:"T49", id:18209, tier:8, nation:"US", type:"LT", frag:0.57, dmg:744.28, spot:2.81, def:0.60, win:51.00 },
"t2_med": { title:"T2 Medium Tank", id:5665, tier:2, nation:"US", type:"MT", frag:1.57, dmg:269.03, spot:1.72, def:1.26, win:60.11 },
"m2_med": { title:"M2 Medium Tank", id:4897, tier:3, nation:"US", type:"MT", frag:1.37, dmg:301.74, spot:1.53, def:1.06, win:56.81 },
"m3_grant": { title:"M3 Lee", id:3105, tier:4, nation:"US", type:"MT", frag:1.02, dmg:348.88, spot:0.84, def:0.86, win:54.26 },
"m4_sherman": { title:"M4 Sherman", id:1057, tier:5, nation:"US", type:"MT", frag:1.52, dmg:699.95, spot:1.57, def:1.08, win:58.75 },
"m7_med": { title:"M7", id:5409, tier:5, nation:"US", type:"MT", frag:0.95, dmg:428.51, spot:2.18, def:1.00, win:55.05 },
"ram-ii": { title:"Ram II", id:51745, tier:5, nation:"US", type:"MT", frag:1.20, dmg:547.38, spot:1.47, def:1.16, win:57.47, prem:1 },
"m4a2e4": { title:"M4A2E4 Sherman", id:52257, tier:5, nation:"US", type:"MT", frag:0.95, dmg:426.72, spot:1.49, def:0.85, win:53.46, prem:1 },
"m4a3e8_sherman": { title:"M4A3E8 Sherman", id:1313, tier:6, nation:"US", type:"MT", frag:1.00, dmg:685.90, spot:1.54, def:1.00, win:54.77 },
"sherman_jumbo": { title:"M4A3E2 Sherman Jumbo", id:10017, tier:6, nation:"US", type:"MT", frag:1.10, dmg:763.81, spot:1.23, def:1.14, win:54.55 },
"a104_m4a3e8a": { title:"M4A3E8 Fury", id:56097, tier:6, nation:"US", type:"MT", frag:1.05, dmg:724.86, spot:1.39, def:1.07, win:54.66, prem:1 },
"t20": { title:"T20", id:1569, tier:7, nation:"US", type:"MT", frag:0.95, dmg:943.30, spot:1.76, def:1.03, win:54.05 },
"t23e3": { title:"T23E3", id:11809, tier:7, nation:"US", type:"MT", frag:1.00, dmg:857.33, spot:1.91, def:1.15, win:51.04, prem:1 },
"pershing": { title:"M26 Pershing", id:5921, tier:8, nation:"US", type:"MT", frag:0.87, dmg:1115.35, spot:1.60, def:0.99, win:51.97 },
"t26_e4_superpershing": { title:"T26E4 SuperPershing", id:13345, tier:8, nation:"US", type:"MT", frag:0.86, dmg:1125.66, spot:0.98, def:0.98, win:51.31, prem:1 },
"t69": { title:"T69", id:14625, tier:8, nation:"US", type:"MT", frag:1.06, dmg:1307.21, spot:1.34, def:1.14, win:52.66 },
"m46_patton": { title:"M46 Patton", id:8993, tier:9, nation:"US", type:"MT", frag:0.89, dmg:1433.92, spot:1.69, def:0.71, win:50.36 },
"t54e1": { title:"T54E1", id:15393, tier:9, nation:"US", type:"MT", frag:1.13, dmg:1701.41, spot:1.05, def:0.78, win:51.06 },
"m48a1": { title:"M48A1 Patton", id:14113, tier:10, nation:"US", type:"MT", frag:0.88, dmg:1703.00, spot:1.62, def:0.66, win:47.83 },
"m60": { title:"M60", id:15905, tier:10, nation:"US", type:"MT", frag:0.81, dmg:1664.40, spot:1.51, def:0.71, win:46.50, prem:1 },
"t95_e6": { title:"T95E6", id:55841, tier:10, nation:"US", type:"MT", frag:0.81, dmg:1664.40, spot:1.51, def:0.71, win:46.50, prem:1 },
"t14": { title:"T14", id:33, tier:5, nation:"US", type:"HT", frag:1.34, dmg:603.30, spot:1.54, def:1.23, win:55.72, prem:1 },
"t1_hvy": { title:"T1 Heavy Tank", id:3361, tier:5, nation:"US", type:"HT", frag:1.25, dmg:639.28, spot:1.20, def:1.13, win:55.30 },
"m6": { title:"M6", id:801, tier:6, nation:"US", type:"HT", frag:1.05, dmg:830.21, spot:1.08, def:0.86, win:53.42 },
"t29": { title:"T29", id:3873, tier:7, nation:"US", type:"HT", frag:1.11, dmg:1236.94, spot:1.15, def:0.98, win:54.80 },
"t34_hvy": { title:"T34", id:2849, tier:8, nation:"US", type:"HT", frag:0.85, dmg:1303.71, spot:0.84, def:0.71, win:50.53, prem:1 },
"t32": { title:"T32", id:4385, tier:8, nation:"US", type:"HT", frag:0.93, dmg:1300.93, spot:1.25, def:0.93, win:52.37 },
"m6a2e1": { title:"M6A2E1", id:52513, tier:8, nation:"US", type:"HT", frag:0.86, dmg:1125.83, spot:1.15, def:0.80, win:47.30, prem:1 },
"m103": { title:"M103", id:9505, tier:9, nation:"US", type:"HT", frag:0.89, dmg:1570.76, spot:1.12, def:0.70, win:49.83 },
"t110": { title:"T110E5", id:10785, tier:10, nation:"US", type:"HT", frag:0.87, dmg:1809.35, spot:1.21, def:0.73, win:48.64 },
"t57_58": { title:"T57 Heavy Tank", id:14881, tier:10, nation:"US", type:"HT", frag:1.15, dmg:2175.25, spot:0.84, def:0.76, win:49.48 },
"t18": { title:"T18", id:6177, tier:2, nation:"US", type:"TD", frag:2.18, dmg:322.47, spot:1.23, def:1.56, win:58.65 },
"t82": { title:"T82", id:6433, tier:3, nation:"US", type:"TD", frag:1.52, dmg:369.32, spot:1.32, def:1.16, win:58.45 },
"t40": { title:"T40", id:7713, tier:4, nation:"US", type:"TD", frag:1.53, dmg:574.88, spot:1.27, def:1.51, win:58.67 },
"m8a1": { title:"M8A1", id:10273, tier:4, nation:"US", type:"TD", frag:1.34, dmg:504.04, spot:1.58, def:1.64, win:58.50 },
"m10_wolverine": { title:"M10 Wolverine", id:6945, tier:5, nation:"US", type:"TD", frag:1.27, dmg:623.59, spot:1.02, def:1.40, win:55.46 },
"t67": { title:"T67", id:10529, tier:5, nation:"US", type:"TD", frag:1.41, dmg:677.17, spot:1.78, def:1.51, win:57.59 },
"m36_slagger": { title:"M36 Jackson", id:7201, tier:6, nation:"US", type:"TD", frag:1.11, dmg:849.18, spot:0.94, def:1.16, win:54.61 },
"m18_hellcat": { title:"M18 Hellcat", id:11553, tier:6, nation:"US", type:"TD", frag:1.23, dmg:925.08, spot:1.51, def:1.34, win:55.57 },
"t25_at": { title:"T25 AT", id:9249, tier:7, nation:"US", type:"TD", frag:1.07, dmg:1089.38, spot:0.82, def:1.12, win:53.45 },
"t25_2": { title:"T25/2", id:11041, tier:7, nation:"US", type:"TD", frag:0.96, dmg:1011.60, spot:1.01, def:1.12, win:52.76 },
"t28": { title:"T28", id:8225, tier:8, nation:"US", type:"TD", frag:1.02, dmg:1393.33, spot:0.52, def:0.94, win:50.79 },
"t28_prototype": { title:"T28 Prototype", id:11297, tier:8, nation:"US", type:"TD", frag:1.05, dmg:1451.93, spot:0.53, def:0.97, win:51.04 },
"t30": { title:"T30", id:2593, tier:9, nation:"US", type:"TD", frag:1.03, dmg:1789.28, spot:0.75, def:0.63, win:50.31 },
"t95": { title:"T95", id:8737, tier:9, nation:"US", type:"TD", frag:1.09, dmg:1815.73, spot:0.51, def:0.65, win:51.72 },
"t110e4": { title:"T110E4", id:13089, tier:10, nation:"US", type:"TD", frag:1.07, dmg:2196.52, spot:0.84, def:0.62, win:49.10 },
"t110e3": { title:"T110E3", id:13857, tier:10, nation:"US", type:"TD", frag:1.14, dmg:2330.38, spot:0.81, def:0.61, win:51.00 },
"t57": { title:"T57", id:2081, tier:2, nation:"US", type:"SP", frag:1.44, dmg:275.82, spot:0.36, def:2.04, win:55.30 },
"m7_priest": { title:"M7 Priest", id:3617, tier:3, nation:"US", type:"SP", frag:1.03, dmg:573.10, spot:0.11, def:1.94, win:51.17 },
"sexton_i": { title:"Sexton_I", id:54049, tier:3, nation:"US", type:"SP", frag:1.09, dmg:268.41, spot:0.13, def:1.70, win:52.95, prem:1 },
"m37": { title:"M37", id:4641, tier:4, nation:"US", type:"SP", frag:1.06, dmg:402.15, spot:0.14, def:1.55, win:53.14 },
"m41": { title:"M41 HMC", id:4129, tier:5, nation:"US", type:"SP", frag:1.07, dmg:1031.91, spot:0.07, def:1.56, win:51.13 },
"m44": { title:"M44", id:16417, tier:6, nation:"US", type:"SP", frag:1.06, dmg:853.77, spot:0.08, def:1.44, win:53.17 },
"m12": { title:"M12", id:7969, tier:7, nation:"US", type:"SP", frag:1.01, dmg:1293.60, spot:0.06, def:1.10, win:50.79 },
"m40m43": { title:"M40/M43", id:7457, tier:8, nation:"US", type:"SP", frag:1.04, dmg:1565.27, spot:0.05, def:0.88, win:50.52 },
"m53_55": { title:"M53/M55", id:16161, tier:9, nation:"US", type:"SP", frag:1.02, dmg:1782.82, spot:0.04, def:0.91, win:50.93 },
"t92": { title:"T92", id:8481, tier:10, nation:"US", type:"SP", frag:0.95, dmg:1854.97, spot:0.04, def:0.71, win:48.29 },
"gb03_cruiser_mk_i": { title:"Cruiser Mk. I", id:5201, tier:2, nation:"UK", type:"LT", frag:1.92, dmg:324.12, spot:1.60, def:1.74, win:59.08 },
"gb58_cruiser_mk_iii": { title:"Cruiser Mk. III", id:7761, tier:2, nation:"UK", type:"LT", frag:1.90, dmg:323.20, spot:2.22, def:1.37, win:61.45 },
"gb76_mk_vic": { title:"Light Mk. VIC", id:54865, tier:2, nation:"UK", type:"LT", frag:1.57, dmg:229.40, spot:2.14, def:1.88, win:59.11, prem:1 },
"gb69_cruiser_mk_ii": { title:"Cruiser Mk. II", id:6993, tier:3, nation:"UK", type:"LT", frag:1.42, dmg:309.54, spot:1.05, def:1.01, win:56.19 },
"gb59_cruiser_mk_iv": { title:"Cruiser Mk. IV", id:7505, tier:3, nation:"UK", type:"LT", frag:1.51, dmg:367.08, spot:1.88, def:1.10, win:60.19 },
"gb04_valentine": { title:"Valentine", id:4945, tier:4, nation:"UK", type:"LT", frag:0.88, dmg:339.85, spot:0.86, def:1.28, win:54.53 },
"gb60_covenanter": { title:"Covenanter", id:6481, tier:4, nation:"UK", type:"LT", frag:1.04, dmg:372.27, spot:1.86, def:1.08, win:56.93 },
"gb20_crusader": { title:"Crusader", id:2129, tier:5, nation:"UK", type:"LT", frag:1.00, dmg:461.82, spot:1.75, def:1.13, win:54.77 },
"gb01_medium_mark_i": { title:"Vickers Medium Mk. I", id:81, tier:1, nation:"UK", type:"MT", frag:1.89, dmg:242.33, spot:1.15, def:1.19, win:58.59 },
"gb05_vickers_medium_mk_ii": { title:"Vickers Medium Mk. II", id:337, tier:2, nation:"UK", type:"MT", frag:1.66, dmg:275.12, spot:1.00, def:1.25, win:58.09 },
"gb06_vickers_medium_mk_iii": { title:"Vickers Medium Mk. III", id:2385, tier:3, nation:"UK", type:"MT", frag:1.17, dmg:294.03, spot:1.06, def:1.05, win:55.32 },
"gb07_matilda": { title:"Matilda", id:849, tier:4, nation:"UK", type:"MT", frag:1.37, dmg:515.62, spot:0.89, def:1.68, win:58.35 },
"gb68_matilda_black_prince": { title:"Matilda Black Prince", id:53585, tier:5, nation:"UK", type:"MT", frag:1.24, dmg:570.67, spot:0.83, def:1.51, win:55.19, prem:1 },
"gb21_cromwell": { title:"Cromwell", id:1105, tier:6, nation:"UK", type:"MT", frag:1.05, dmg:709.35, spot:2.09, def:0.96, win:55.06 },
"gb22_comet": { title:"Comet", id:5457, tier:7, nation:"UK", type:"MT", frag:1.01, dmg:929.49, spot:1.80, def:1.06, win:53.31 },
"gb23_centurion": { title:"Centurion Mk. I", id:5969, tier:8, nation:"UK", type:"MT", frag:0.82, dmg:1149.29, spot:1.33, def:0.92, win:52.66 },
"gb24_centurion_mk3": { title:"Centurion Mk. 7/1", id:5713, tier:9, nation:"UK", type:"MT", frag:0.90, dmg:1565.29, spot:1.30, def:0.84, win:50.38 },
"gb70_fv4202_105": { title:"FV4202", id:7249, tier:10, nation:"UK", type:"MT", frag:0.94, dmg:1832.04, spot:1.40, def:0.77, win:48.08 },
"gb08_churchill_i": { title:"Churchill I", id:2897, tier:5, nation:"UK", type:"HT", frag:1.18, dmg:635.08, spot:0.91, def:1.23, win:54.97 },
"gb51_excelsior": { title:"Excelsior", id:54353, tier:5, nation:"UK", type:"HT", frag:1.44, dmg:659.80, spot:1.60, def:1.33, win:57.71, prem:1 },
"gb09_churchill_vii": { title:"Churchill VII", id:4689, tier:6, nation:"UK", type:"HT", frag:1.00, dmg:765.86, spot:0.78, def:1.09, win:53.07 },
"gb63_tog_ii": { title:"TOG II*", id:53841, tier:6, nation:"UK", type:"HT", frag:1.18, dmg:858.71, spot:0.62, def:1.30, win:52.40, prem:1 },
"gb10_black_prince": { title:"Black Prince", id:3153, tier:7, nation:"UK", type:"HT", frag:0.95, dmg:1018.46, spot:0.88, def:1.12, win:54.07 },
"gb11_caernarvon": { title:"Caernarvon", id:3921, tier:8, nation:"UK", type:"HT", frag:0.82, dmg:1219.12, spot:1.12, def:0.95, win:51.47 },
"gb12_conqueror": { title:"Conqueror", id:4433, tier:9, nation:"UK", type:"HT", frag:0.88, dmg:1605.38, spot:1.03, def:0.69, win:49.90 },
"gb13_fv215b": { title:"FV215b", id:6225, tier:10, nation:"UK", type:"HT", frag:0.91, dmg:1891.22, spot:1.10, def:0.67, win:48.39 },
"gb39_universal_carrierqf2": { title:"Universal Carrier 2-pdr", id:8273, tier:2, nation:"UK", type:"TD", frag:1.86, dmg:302.97, spot:1.39, def:1.61, win:59.59 },
"gb42_valentine_at": { title:"Valentine AT", id:8017, tier:3, nation:"UK", type:"TD", frag:1.64, dmg:387.01, spot:0.89, def:1.65, win:58.95 },
"gb57_alecto": { title:"Alecto", id:9041, tier:4, nation:"UK", type:"TD", frag:1.35, dmg:483.05, spot:1.47, def:1.59, win:57.35 },
"gb73_at2": { title:"AT 2", id:8785, tier:5, nation:"UK", type:"TD", frag:1.21, dmg:585.34, spot:0.81, def:1.59, win:57.24 },
"gb74_at8": { title:"AT 8", id:9553, tier:6, nation:"UK", type:"TD", frag:1.14, dmg:837.47, spot:0.70, def:1.44, win:56.33 },
"gb40_gun_carrier_churchill": { title:"Churchill Gun Carrier", id:9809, tier:6, nation:"UK", type:"TD", frag:0.91, dmg:703.86, spot:0.42, def:1.00, win:51.64 },
"gb75_at7": { title:"AT 7", id:10065, tier:7, nation:"UK", type:"TD", frag:1.19, dmg:1252.17, spot:0.69, def:1.32, win:56.47 },
"gb71_at_15a": { title:"AT 15A", id:54097, tier:7, nation:"UK", type:"TD", frag:0.93, dmg:968.96, spot:0.70, def:1.20, win:51.85, prem:1 },
"gb72_at15": { title:"AT 15", id:8529, tier:8, nation:"UK", type:"TD", frag:1.08, dmg:1461.97, spot:0.67, def:1.20, win:52.68 },
"gb32_tortoise": { title:"Tortoise", id:52561, tier:9, nation:"UK", type:"TD", frag:1.10, dmg:1835.74, spot:0.64, def:0.89, win:51.33 },
"gb48_fv215b_183": { title:"FV215b (183)", id:9297, tier:10, nation:"UK", type:"TD", frag:1.27, dmg:2358.17, spot:0.59, def:0.56, win:48.86 },
"gb25_loyd_carrier": { title:"Loyd Gun Carriage", id:10577, tier:2, nation:"UK", type:"SP", frag:1.40, dmg:200.60, spot:0.25, def:1.34, win:56.48 },
"gb27_sexton": { title:"Sexton II", id:3409, tier:3, nation:"UK", type:"SP", frag:0.93, dmg:234.35, spot:0.13, def:1.38, win:52.88 },
"gb78_sexton_i": { title:"Sexton I", id:54609, tier:3, nation:"UK", type:"SP", frag:1.09, dmg:268.41, spot:0.13, def:1.70, win:52.95, prem:1 },
"gb26_birch_gun": { title:"Birch Gun", id:10833, tier:4, nation:"UK", type:"SP", frag:1.01, dmg:372.03, spot:0.10, def:1.91, win:53.58 },
"gb28_bishop": { title:"Bishop", id:11089, tier:5, nation:"UK", type:"SP", frag:1.22, dmg:644.80, spot:0.11, def:1.65, win:54.88 },
"gb77_fv304": { title:"FV304", id:11857, tier:6, nation:"UK", type:"SP", frag:1.15, dmg:863.65, spot:0.17, def:2.16, win:54.59 },
"gb29_crusader_5inch": { title:"Crusader 5.5-in. SP", id:11345, tier:7, nation:"UK", type:"SP", frag:0.94, dmg:1015.64, spot:0.07, def:1.72, win:51.46 },
"gb79_fv206": { title:"FV207", id:12113, tier:8, nation:"UK", type:"SP", frag:0.94, dmg:1314.18, spot:0.03, def:0.85, win:49.89 },
"gb30_fv3805": { title:"FV3805", id:11601, tier:9, nation:"UK", type:"SP", frag:1.00, dmg:1716.25, spot:0.03, def:0.75, win:50.37 },
"gb31_conqueror_gun": { title:"Conqueror Gun Carriage", id:12369, tier:10, nation:"UK", type:"SP", frag:1.04, dmg:2231.56, spot:0.03, def:0.97, win:51.08 },
"renaultft": { title:"Renault FT", id:577, tier:1, nation:"FR", type:"LT", frag:1.80, dmg:239.34, spot:1.54, def:1.72, win:59.84 },
"hotchkiss_h35": { title:"Hotchkiss H35", id:1345, tier:2, nation:"FR", type:"LT", frag:1.47, dmg:241.74, spot:1.39, def:1.85, win:58.57 },
"d1": { title:"D1", id:1601, tier:2, nation:"FR", type:"LT", frag:1.41, dmg:235.60, spot:1.13, def:1.89, win:55.61 },
"amx38": { title:"AMX 38", id:5953, tier:3, nation:"FR", type:"LT", frag:1.00, dmg:219.26, spot:0.97, def:1.74, win:55.61 },
"amx40": { title:"AMX 40", id:2881, tier:4, nation:"FR", type:"LT", frag:0.74, dmg:247.57, spot:0.85, def:0.96, win:52.59 },
"elc_amx": { title:"ELC AMX", id:14145, tier:5, nation:"FR", type:"LT", frag:0.66, dmg:456.92, spot:2.64, def:0.73, win:53.91 },
"amx_12t": { title:"AMX 12 t", id:6465, tier:6, nation:"FR", type:"LT", frag:0.57, dmg:479.58, spot:2.04, def:0.55, win:51.90 },
"amx_13_75": { title:"AMX 13 75", id:5185, tier:7, nation:"FR", type:"LT", frag:0.62, dmg:587.00, spot:2.10, def:0.61, win:52.41 },
"amx_13_90": { title:"AMX 13 90", id:4929, tier:8, nation:"FR", type:"LT", frag:0.71, dmg:833.03, spot:2.49, def:0.65, win:52.04 },
"d2": { title:"D2", id:321, tier:3, nation:"FR", type:"MT", frag:1.31, dmg:306.42, spot:0.94, def:1.58, win:58.38 },
"lorraine40t": { title:"Lorraine 40 t", id:5697, tier:9, nation:"FR", type:"MT", frag:0.96, dmg:1393.84, spot:1.38, def:0.78, win:49.51 },
"bat_chatillon25t": { title:"Bat.-Chatillon 25 t", id:3649, tier:10, nation:"FR", type:"MT", frag:1.11, dmg:1801.98, spot:2.09, def:0.86, win:49.28 },
"b1": { title:"B1", id:1089, tier:4, nation:"FR", type:"HT", frag:1.06, dmg:338.68, spot:1.11, def:1.23, win:53.27 },
"bdr_g1b": { title:"BDR G1 B", id:6721, tier:5, nation:"FR", type:"HT", frag:1.23, dmg:648.03, spot:0.87, def:1.01, win:54.17 },
"arl_44": { title:"ARL 44", id:2625, tier:6, nation:"FR", type:"HT", frag:0.96, dmg:809.04, spot:0.91, def:0.81, win:52.37 },
"amx_m4_1945": { title:"AMX M4 mle. 45", id:6977, tier:7, nation:"FR", type:"HT", frag:0.89, dmg:1027.78, spot:0.94, def:0.93, win:51.56 },
"amx_50_100": { title:"AMX 50 100", id:3137, tier:8, nation:"FR", type:"HT", frag:1.11, dmg:1410.01, spot:0.93, def:1.03, win:51.32 },
"fcm_50t": { title:"FCM 50 t", id:64065, tier:8, nation:"FR", type:"HT", frag:0.93, dmg:1244.68, spot:1.53, def:1.06, win:50.00, prem:1 },
"amx_50_120": { title:"AMX 50 120", id:3905, tier:9, nation:"FR", type:"HT", frag:1.04, dmg:1676.18, spot:0.89, def:0.80, win:49.46 },
"f10_amx_50b": { title:"AMX 50 B", id:6209, tier:10, nation:"FR", type:"HT", frag:1.05, dmg:1977.71, spot:0.96, def:0.80, win:47.95 },
"renaultft_ac": { title:"Renault FT AC", id:7745, tier:2, nation:"FR", type:"TD", frag:2.03, dmg:329.78, spot:0.93, def:1.91, win:59.33 },
"fcm_36pak40": { title:"FCM 36 Pak 40", id:2369, tier:3, nation:"FR", type:"TD", frag:1.87, dmg:452.95, spot:1.09, def:1.78, win:60.49, prem:1 },
"renaultue57": { title:"Renault UE 57", id:8257, tier:3, nation:"FR", type:"TD", frag:1.48, dmg:371.98, spot:1.10, def:1.67, win:59.17 },
"somua_sau_40": { title:"Somua SAu 40", id:9793, tier:4, nation:"FR", type:"TD", frag:1.19, dmg:399.72, spot:0.57, def:1.04, win:54.17 },
"s_35ca": { title:"S35 CA", id:10049, tier:5, nation:"FR", type:"TD", frag:1.38, dmg:694.54, spot:0.92, def:1.43, win:55.02 },
"arl_v39": { title:"ARL V39", id:11585, tier:6, nation:"FR", type:"TD", frag:0.96, dmg:736.45, spot:0.65, def:1.03, win:50.74 },
"amx_ac_mle1946": { title:"AMX AC mle. 46", id:10817, tier:7, nation:"FR", type:"TD", frag:0.91, dmg:996.89, spot:0.69, def:1.01, win:51.42 },
"amx_ac_mle1948": { title:"AMX AC mle. 48", id:12097, tier:8, nation:"FR", type:"TD", frag:0.97, dmg:1328.24, spot:0.80, def:0.96, win:50.01 },
"amx50_foch": { title:"AMX 50 Foch", id:11073, tier:9, nation:"FR", type:"TD", frag:1.00, dmg:1662.75, spot:0.98, def:0.91, win:50.13 },
"amx_50fosh_155": { title:"AMX 50 Foch (155)", id:13889, tier:10, nation:"FR", type:"TD", frag:1.29, dmg:2373.89, spot:0.93, def:0.76, win:49.70 },
"renaultbs": { title:"Renault FT 75 BS", id:833, tier:2, nation:"FR", type:"SP", frag:1.41, dmg:249.98, spot:0.15, def:1.99, win:55.96 },
"lorraine39_l_am": { title:"Lorraine 39L AM", id:3393, tier:3, nation:"FR", type:"SP", frag:1.35, dmg:491.92, spot:0.14, def:2.08, win:54.96 },
"amx_ob_am105": { title:"AMX 105 AM mle. 47", id:14657, tier:4, nation:"FR", type:"SP", frag:1.11, dmg:432.92, spot:0.13, def:1.65, win:54.28 },
"_105_lefh18b2": { title:"105 leFH18B2", id:2113, tier:5, nation:"FR", type:"SP", frag:1.39, dmg:701.86, spot:0.10, def:1.87, win:54.74, prem:1 },
"amx_105am": { title:"AMX 13 105 AM mle. 50", id:4161, tier:5, nation:"FR", type:"SP", frag:1.18, dmg:652.24, spot:0.10, def:2.30, win:52.34 },
"amx_13f3am": { title:"AMX 13 F3 AM", id:4673, tier:6, nation:"FR", type:"SP", frag:1.11, dmg:1061.02, spot:0.08, def:1.65, win:51.95 },
"lorraine155_50": { title:"Lorraine 155 mle. 50", id:7233, tier:7, nation:"FR", type:"SP", frag:0.95, dmg:1265.21, spot:0.06, def:1.33, win:50.46 },
"lorraine155_51": { title:"Lorraine 155 mle. 51", id:7489, tier:8, nation:"FR", type:"SP", frag:0.98, dmg:1440.46, spot:0.06, def:1.13, win:49.94 },
"bat_chatillon155_55": { title:"Bat.-Chatillon 155 55", id:14401, tier:9, nation:"FR", type:"SP", frag:0.96, dmg:1617.00, spot:0.05, def:1.04, win:49.27 },
"bat_chatillon155_58": { title:"Bat.-Chatillon 155 58", id:11841, tier:10, nation:"FR", type:"SP", frag:1.11, dmg:1867.54, spot:0.07, def:1.24, win:48.44 },
"ch06_renault_nc31": { title:"Renault NC-31", id:1329, tier:1, nation:"CH", type:"LT", frag:1.96, dmg:256.78, spot:1.51, def:1.64, win:57.67 },
"ch07_vickers_mke_type_bt26": { title:"Vickers Mk. E Type B", id:2353, tier:2, nation:"CH", type:"LT", frag:1.71, dmg:284.18, spot:1.52, def:1.49, win:59.33 },
"ch08_type97_chi_ha": { title:"Type 2597 Chi-Ha", id:4401, tier:3, nation:"CH", type:"LT", frag:1.50, dmg:367.90, spot:1.36, def:1.46, win:59.68 },
"ch09_m5": { title:"M5A1 Stuart", id:3121, tier:4, nation:"CH", type:"LT", frag:0.97, dmg:352.09, spot:2.39, def:1.06, win:55.62 },
"ch15_59_16": { title:"59-16", id:4913, tier:6, nation:"CH", type:"LT", frag:0.54, dmg:385.90, spot:2.74, def:0.51, win:52.12 },
"ch24_type64": { title:"Type 64", id:64817, tier:6, nation:"CH", type:"LT", frag:0.60, dmg:508.86, spot:2.83, def:0.68, win:52.16, prem:1 },
"ch02_type62": { title:"Type 62", id:305, tier:7, nation:"CH", type:"LT", frag:0.59, dmg:599.17, spot:2.38, def:0.67, win:50.75, prem:1 },
"ch16_wz_131": { title:"WZ-131", id:3377, tier:7, nation:"CH", type:"LT", frag:0.61, dmg:669.26, spot:2.57, def:0.63, win:52.46 },
"ch17_wz131_1_wz132": { title:"WZ-132", id:3889, tier:8, nation:"CH", type:"LT", frag:0.57, dmg:744.28, spot:2.81, def:0.60, win:51.00 },
"ch21_t34": { title:"Type T-34", id:4657, tier:5, nation:"CH", type:"MT", frag:1.12, dmg:516.40, spot:1.49, def:1.11, win:54.11 },
"ch20_type58": { title:"Type 58", id:5169, tier:6, nation:"CH", type:"MT", frag:1.02, dmg:709.00, spot:1.63, def:1.00, win:53.20 },
"ch04_t34_1": { title:"T-34-1", id:1073, tier:7, nation:"CH", type:"MT", frag:0.98, dmg:973.97, spot:1.60, def:1.00, win:54.16 },
"ch01_type59": { title:"Type 59", id:49, tier:8, nation:"CH", type:"MT", frag:0.89, dmg:1062.59, spot:1.72, def:0.91, win:51.14, prem:1 },
"ch01_type59_gold": { title:"Type 59 G", id:561, tier:8, nation:"CH", type:"MT", frag:1.00, dmg:1000.00, spot:1.00, def:1.00, win:50.00, prem:1 },
"ch05_t34_2": { title:"T-34-2", id:1585, tier:8, nation:"CH", type:"MT", frag:0.83, dmg:1045.18, spot:1.69, def:0.90, win:50.81 },
"ch14_t34_3": { title:"T-34-3", id:64049, tier:8, nation:"CH", type:"MT", frag:0.90, dmg:1113.38, spot:1.54, def:0.74, win:49.84, prem:1 },
"ch18_wz-120": { title:"WZ-120", id:1841, tier:9, nation:"CH", type:"MT", frag:0.90, dmg:1463.73, spot:1.54, def:0.68, win:50.36 },
"ch19_121": { title:"121", id:4145, tier:10, nation:"CH", type:"MT", frag:0.93, dmg:1791.20, spot:1.43, def:0.67, win:48.11 },
"ch10_is2": { title:"IS-2", id:3633, tier:7, nation:"CH", type:"HT", frag:1.07, dmg:1139.09, spot:1.14, def:0.83, win:54.13 },
"ch03_wz_111": { title:"WZ-111", id:817, tier:8, nation:"CH", type:"HT", frag:0.93, dmg:1312.57, spot:1.16, def:0.81, win:52.85, prem:1 },
"ch11_110": { title:"110", id:2865, tier:8, nation:"CH", type:"HT", frag:0.93, dmg:1312.57, spot:1.16, def:0.81, win:52.85 },
"ch23_112": { title:"112", id:64561, tier:8, nation:"CH", type:"HT", frag:0.97, dmg:1294.88, spot:1.36, def:0.84, win:53.09, prem:1 },
"ch12_111_1_2_3": { title:"WZ-111 model 1-4", id:2097, tier:9, nation:"CH", type:"HT", frag:0.93, dmg:1661.51, spot:1.30, def:0.64, win:51.30 },
"ch22_113": { title:"113", id:5425, tier:10, nation:"CH", type:"HT", frag:0.84, dmg:1758.86, spot:1.31, def:0.61, win:47.88 },
"nc27": { title:"Renault Otsu", id:609, tier:1, nation:"JP", type:"LT", frag:1.79, dmg:223.87, spot:1.31, def:2.30, win:57.03 },
"ha_go": { title:"Type 95 Ha-Go", id:865, tier:2, nation:"JP", type:"LT", frag:1.68, dmg:285.74, spot:1.75, def:1.54, win:60.54 },
"te_ke": { title:"Type 97 Te-Ke", id:3169, tier:2, nation:"JP", type:"LT", frag:1.68, dmg:285.74, spot:1.75, def:1.54, win:60.54, prem:1 },
"ke_ni": { title:"Type 98 Ke-Ni", id:2401, tier:3, nation:"JP", type:"LT", frag:1.40, dmg:333.66, spot:1.75, def:1.54, win:59.80 },
"ke_ni_b": { title:"Type 98 Ke-Ni Otsu", id:51809, tier:3, nation:"JP", type:"LT", frag:1.40, dmg:333.66, spot:1.75, def:1.54, win:59.80, prem:1 },
"ke_ho": { title:"Type 5 Ke-Ho", id:2913, tier:4, nation:"JP", type:"LT", frag:1.20, dmg:426.96, spot:1.84, def:1.28, win:57.47 },
"chi_ni": { title:"Chi-Ni", id:353, tier:2, nation:"JP", type:"MT", frag:1.60, dmg:265.10, spot:1.53, def:1.40, win:59.44 },
"chi_ha": { title:"Type 97 Chi-Ha", id:2145, tier:3, nation:"JP", type:"MT", frag:1.47, dmg:366.08, spot:1.30, def:1.35, win:58.51 },
"chi_he": { title:"Type 1 Chi-He", id:1633, tier:4, nation:"JP", type:"MT", frag:1.10, dmg:409.37, spot:1.25, def:1.11, win:56.17 },
"chi_nu": { title:"Type 3 Chi-Nu", id:1377, tier:5, nation:"JP", type:"MT", frag:1.03, dmg:520.56, spot:1.25, def:1.09, win:54.18 },
"chi_nu_kai": { title:"Type 3 Chi-Nu Kai", id:51553, tier:5, nation:"JP", type:"MT", frag:1.09, dmg:556.38, spot:1.09, def:1.18, win:53.79, prem:1 },
"chi_to": { title:"Type 4 Chi-To", id:1889, tier:6, nation:"JP", type:"MT", frag:1.06, dmg:773.89, spot:1.14, def:1.09, win:52.24 },
"chi_ri": { title:"Type 5 Chi-Ri", id:1121, tier:7, nation:"JP", type:"MT", frag:0.97, dmg:962.29, spot:1.07, def:1.06, win:51.38 },
"sta_1": { title:"STA-1", id:2657, tier:8, nation:"JP", type:"MT", frag:0.91, dmg:1205.34, spot:1.38, def:1.07, win:51.33 },
"type_61": { title:"Type 61", id:3425, tier:9, nation:"JP", type:"MT", frag:0.98, dmg:1635.26, spot:1.34, def:0.80, win:51.01 },
"st_b1": { title:"STB-1", id:3681, tier:10, nation:"JP", type:"MT", frag:1.03, dmg:1926.19, spot:1.63, def:0.83, win:49.72 }
};
// variables for statistics
var vehAmount = 0, vehTierTotal = 0, vehBatsTotal = 0, colVehBatsTotal = " ",
tierStats = {p:{b:0,w:0,bg:0},t:{b:0,w:0,bg:0}},
expStats = {frag:0,dmg:0,spot:0,def:0,win:0},
vehTiers = {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}},
vehBadges = {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 = [], vehList = {}, colRat = {};
// 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"+filter(typeWins,2)+"";
}
// average tier, colouring premium tanks and winrates in vehicle tables
var vehRow_class = document.getElementsByClassName('t-profile_tankstype t-profile_tankstype__item'),
vehRowStats_class = document.getElementsByClassName('t-profile_slidedown tablesorter-childRow');
for (var i=0; i"+filter(vehWins,2)+"";
// vehicle badges
vehBadges[vehBadge].c ++;
vehBadges[vehBadge].p = (vehBadges[vehBadge].c/vehBadges[5].c*100).toFixed(0);
// check vehicle with statArr - warn if not - only for debugging purposes, as all possible vehicle up to 0.9.1 are supported
if (statArr[vehImgName[1]]) {
var vehStatArr = statArr[vehImgName[1]];
// process information and push into arrays
var vehTier = vehStatArr.tier;
vehTiers[vehTier].b += vehBats;
vehTiers[vehTier].c ++;
vehTierTotal += vehTier*vehBats;
vehBatsTotal += vehBats;
// summarize expected stat from every vehicle for WN8
expStats.frag += vehStatArr.frag*vehBats;
expStats.dmg += vehStatArr.dmg *vehBats;
expStats.spot += vehStatArr.spot*vehBats;
expStats.def += vehStatArr.def *vehBats;
expStats.win += vehStatArr.win *vehBats;
// get info for premium table
if (!!vehStatArr.prem) {
tierStats.p.b += vehBats;
tierStats.p.w += vehWins;
vehRow_class[i].cells[0].getElementsByTagName('span')[1].className += " b-gold-name";
premArr.push([vehRow_class[i].cloneNode(true), vehRowStats_class[i].cloneNode(true)]);
if (vehRow_class[i].cells[3].innerHTML.length > 2) { tierStats.p.bg ++; }
}
// get info for tier 10 table
if (vehTier == 10) {
tierStats.t.b += vehBats;
tierStats.t.w += vehWins;
tenArr.push([vehRow_class[i].cloneNode(true), vehRowStats_class[i].cloneNode(true)]);
if (vehRow_class[i].cells[3].innerHTML.length > 2) { tierStats.t.bg ++; }
}
// summarize player vehicles into dedicated array for console
vehList[vehStatArr.id] = {
"infoNameFull": vehStatArr.title,
"infoName": vehImgName[1],
"infoId": vehStatArr.id,
"vehNation": vehStatArr.nation,
"vehTier": vehStatArr.tier,
"vehType": vehStatArr.type,
"vehBadge": vehBadge,
"vehPrem": vehStatArr.prem,
"vehStat": {battles: vehBats, battlesWins: parseFloat(vehWins)},
"vehStatExpected": {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, calculate averages and colourize
var s = (function() {
var days = (new Date() - new Date(document.getElementsByClassName('js-date-format')[0].getAttribute('data-timestamp')*1000))/1000/60/60/24,
bats = 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),
loss = filter(or_table.rows[2].cells[1].innerHTML.match(/([\d.,\s| ]+\d+)\s/)[1],1),
surv = 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),
expA = filter(or_table.rows[5].cells[1].innerHTML,1),
expM = filter(or_table.rows[6].cells[1].innerHTML,1),
frag = filter(bp_table.rows[0].cells[1].innerHTML,1),
spot = filter(bp_table.rows[1].cells[1].innerHTML,1),
hits = parseFloat(bp_table.rows[2].cells[1].innerHTML.replace(/[,]/g,".")),
dmgD = 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),
dths = filter(sm_ratio[0].innerHTML.match(/\/(.+)$/)[1],1),
dmgR = filter(sm_ratio[1].innerHTML.match(/\/(.+)$/)[1],1),
draw = bats-(wins+loss),
aBats = bats/days,
aWins = (wins/bats)*100,
aLoss = (loss/bats)*100,
aDraw = (draw/bats)*100,
aSurv = (surv/bats)*100,
aFrag = frag/bats,
aDths = dths/bats,
aSpot = spot/bats,
aDmgD = dmgD/bats,
aDmgR = dmgR/bats,
aCaps = caps/bats,
aDefs = defs/bats,
aTier = vehTierTotal/vehBatsTotal,
winLR = wins/loss,
winsR = colStat(aWins, "wr", 2, "%" ),
lossR = colStat(aLoss, "wr", 2, "%" ),
survR = colStat(aSurv, "sr", 2, "%" ),
hitsR = colStat(hits, "hr", 2, "%" ),
drawR = colStat(aDraw, "", 2, "%" ),
batsC = colStat(bats, "bat", 0 ),
dmgTier = colStat(aDmgD/aTier, "dmg", 0, "", aDmgD);
return { days: days, bats: bats, wins: wins, loss: loss, surv: surv, exp: exp, expA: expA, expM: expM, frag: frag, spot: spot, hits: hits, dmgD: dmgD, caps: caps, defs: defs, dths: dths, dmgR: dmgR, draw: draw, aBats: aBats, aWins: aWins, aLoss: aLoss, aDraw: aDraw, aSurv: aSurv, aFrag: aFrag, aDths: aDths, aSpot: aSpot, aDmgD: aDmgD, aDmgR: aDmgR, aCaps: aCaps, aDefs: aDefs, aTier: aTier, winLR: winLR, winsR: winsR, lossR: lossR, survR: survR, hitsR: hitsR, drawR: drawR, batsC: batsC, dmgTier: dmgTier };
})();
// Finalize WN8 - e = expected, w = weighted, n = normalized
// all steps are stored in variables for console insertion
var eFrag = expStats.frag/vehBatsTotal,
eDmg = expStats.dmg/vehBatsTotal,
eSpot = expStats.spot/vehBatsTotal,
eDef = expStats.def/vehBatsTotal,
eWin = expStats.win/vehBatsTotal,
wFrag = s.aFrag/eFrag,
wDmg = s.aDmgD/eDmg,
wSpot = s.aSpot/eSpot,
wDef = s.aDefs/eDef,
wWin = s.aWins/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,
pct = 100, scale = 100;
if (rating<=colArr.sUni.wn8) {
pct = (rating/colArr.sUni.wn8)*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,"wn8",2) };
})();
// WN7 - Legacy Support
var wn7 = (function() {
var frag = s.aFrag*(1240-1040/(Math.pow(Math.min(s.aTier,6),0.164))),
dmg = s.aDmgD*530/(184*Math.exp(0.24*s.aTier)+130),
spot = s.aSpot*125*Math.min(s.aTier,3)/3,
def = Math.min(2.2,s.aDefs)*100,
win = (((185/(0.17+Math.exp((s.aWins-35)*-0.134)))-500)*0.45),
norm = -Math.abs((((5-Math.min(s.aTier,5))*125)/(1+Math.exp(s.aTier-Math.pow(s.bats/220,3/s.aTier))*1.5))),
rating = frag+dmg+spot+def+win+norm,
pct = 100, scale = 100;
if (rating<=colArr.sUni.wn7) {
pct = (rating/colArr.sUni.wn7)*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,"wn7",2) };
})();
// efficiency - improved
var eff = (function() {
var frag = s.aFrag*250,
dmg = s.aDmgD*(10/(s.aTier+2))*(0.23+2*s.aTier/100),
spot = s.aSpot*150,
cap = (Math.log(s.aCaps+1)/Math.log(1.732))*150,
def = s.aDefs*150,
rating = frag+dmg+spot+cap+def,
pct = 100, scale = 100;
if (rating<=colArr.sUni.eff) {
pct = (rating/colArr.sUni.eff)*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,"eff",2) };
})();
// end formula calculations and variables
// start modifying and enhancing the rest of the page
// 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'),
profileHead_div = document.createElement('div'),
profileName_class = document.getElementsByClassName('b-profile-name')[0];
profile_div.className = "b-profile-wrpr";
profileHead_div.className = "b-profile-header";
profileHead_div.innerHTML += scriptlink;
profileName_class.lastElementChild.innerHTML += " - "+s.days.toFixed(0)+" "+locale.p03+".";
profileName_class.parentNode.insertBefore(profile_div, profileName_class.nextSibling);
profile_div.appendChild(profileHead_div);
profile_div.appendChild(profileName_class);
// profile header - check for missing battles and notify
var profileError_div = document.createElement('div');
profileError_div.className = "b-profile-error";
if (vehBatsTotal != s.bats) {
profileError_div.innerHTML = locale.p69;
profileError_div.style.display="inline-block";
colVehBatsTotal = "API: "+filter(vehBatsTotal,2)+"";
}
profileHead_div.insertBefore(profileError_div, profileHead_div.firstElementChild);
// button for saving stats to clipboard
var ratingsClipboard = locale.p72+" "+nick+": \n"+locale.p73+" "+s.bats+" \nWR: "+s.aWins.toFixed(2)+" \nWN8: "+wn8.rating.toFixed(2)+" \nWN7: "+wn7.rating.toFixed(2)+" \nEff: "+eff.rating.toFixed(2),
ratingsClipboard_div = document.createElement('div');
ratingsClipboard_div.className = "b-ratingsClip";
ratingsClipboard_div.innerHTML += ""+ratingsClipboard+"
"+locale.p64+"
"+locale.p63+"";
profileHead_div.insertBefore(ratingsClipboard_div, profileHead_div.firstElementChild.nextSibling);
// background behind profile wrapper
var background_div = document.createElement('div');
background_div.className = "b-background";
background_div.innerHTML = "
";
background_div.style.background = colRat.wn8;
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'),
bottomNav_div = document.createElement('div');
topNav_div.className = "b-profile-nav";
bottomNav_div.className = "b-profile-nav";
topNav_div.innerHTML += ""+locale.p01+"";
bottomNav_div.innerHTML += ""+locale.p02+"";
dropdown_class.appendChild(topNav_div);
lcontent_class.appendChild(bottomNav_div);
// player statistic links
var nm_url = "http://noobmeter.com/player/"+nm_srv+"/"+nick+"/"+userid,
wl_player = "", nm_player = "", wn_player = "", ws_player = "", fz_player = "", wlife_player = "", signature = "", replays = "";
if (!!wl_srv) {
wl_player = "WoTLabs | ";
signature = "| "+locale.p05+" | "+locale.p06+" | "
+ ""+locale.p07+" |
";
}
if (!!nm_srv) {
nm_player = "Noobmeter | ";
}
if (!!wn_srv) {
wn_player = "Wot-news | ";
}
if (!!ws_srv) {
ws_player = "WoTstats | ";
}
if (!!fz_srv) {
fz_player = "Feldzug | ";
}
if (!!wlife_srv) {
wlife_player = "WoT-Life | ";
}
if (!!wr_srv) {
replays = "| "+locale.p08+" | WoTReplays |
";
}
var playerstat = "| "+locale.p04+" | "+wl_player+nm_player+wn_player+"
| "+ws_player+fz_player+wlife_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
// personal data - modify data
var pTable_class = document.getElementsByClassName('t-personal-data')[0],
pT_avgxp_name = document.createElement('th'),
pT_avgxp_value = document.createElement('td'),
pT_avgtier_name = document.createElement('th'),
pT_avgtier_value = document.createElement('td');
pT_avgxp_name.className = "t-personal-data_ico t-personal-data_ico__exp";
pT_avgxp_value.className = "t-personal-data_value";
pT_avgtier_name.className = "t-personal-data_ico t-personal-data_ico__tier";
pT_avgtier_value.className = "t-personal-data_value";
pT_avgxp_name.innerHTML = locale.p11;
pT_avgxp_value.innerHTML = filter(s.expA,2);
pT_avgtier_name.innerHTML = locale.p12;
pT_avgtier_value.innerHTML = s.aTier.toFixed(2);
pTable_class.rows[0].cells[0].innerHTML = locale.p09;
pTable_class.rows[0].cells[1].innerHTML = locale.p10;
pTable_class.rows[0].cells[1].parentNode.insertBefore(pT_avgxp_name, pTable_class.rows[0].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[0].cells[5].innerHTML = locale.p71;
pTable_class.rows[0].appendChild(pT_avgtier_name);
pTable_class.rows[1].cells[0].innerHTML = s.winsR;
pTable_class.rows[1].cells[1].innerHTML = s.batsC;
pTable_class.rows[1].cells[1].parentNode.insertBefore(pT_avgxp_value, pTable_class.rows[1].cells[1].nextSibling);
pTable_class.rows[1].cells[3].innerHTML = s.hitsR;
pTable_class.rows[1].cells[4].innerHTML = s.dmgTier;
pTable_class.rows[1].appendChild(pT_avgtier_value);
// speedometer - win/loss ratio
var sm_body_class = document.getElementsByClassName('b-speedometer-body')[0],
sm_wr_div = document.createElement('div'),
sm_wr_weight = (isFinite(s.winLR)) ? s.winLR.toFixed(2) : 1,
sm_wr_arrow = Math.min(30*(s.winLR-1),31).toFixed(4);
sm_wr_div.className = "b-speedometer";
sm_wr_div.innerHTML = ""+locale.p13+"
"+sm_wr_weight+"
"+filter(s.wins,2)+" / "+filter(s.loss,2)+"
";
sm_body_class.appendChild(sm_wr_div);
// performance ratings wrapper
var ratings_div = document.createElement('div'),
ratingsHeader_div = document.createElement('div'),
ratingsInfo_div = document.createElement('div'),
ratingsInfo_table = document.createElement('table'),
ub_class = document.getElementsByClassName('b-userblock-wrpr')[0];
ratings_div.className = "b-ratings-wrpr";
ratingsHeader_div.className = "b-head-block";
ratingsInfo_div.className = "b-ratings-info";
ratingsInfo_table.className = "t-ratings-info";
ratingsHeader_div.innerHTML += ""+locale.p14+"
";
// inserting performance ratings
ratingsInfo_table.innerHTML = "| "+locale.p15+" | "+locale.p30+" | "+locale.p16+" | "+locale.p17+" |
|---|
| "+wn8.ratingCol+" | "+wn7.ratingCol+" | "+eff.ratingCol+" | "+locale.p18+" |
";
ratings_div.appendChild(ratingsHeader_div);
ratings_div.appendChild(ratingsInfo_div);
ratingsInfo_div.appendChild(ratingsInfo_table);
ub_class.parentNode.insertBefore(ratings_div, ub_class.nextSibling);
// create and populate performance rating calculations table
var rTable_div = document.createElement('div'),
rTable = document.createElement('table'),
rTHead = document.createElement('thead'),
rTBody = document.createElement('tbody');
rTable_div.className = "ratings-table";
rTable.className = "t-table-ratings";
rTable_div.innerHTML = ""+locale.p19+"
";
rTHead.innerHTML = "| "+locale.p20+" | "+locale.p21+" | "+locale.p22+" | "+locale.p23+" | "+locale.p24+" | "+locale.p25+" | "+locale.p26+" | "+locale.p27+" | "+locale.p28+" |
";
ratings_div.appendChild(rTable_div);
rTable_div.appendChild(rTable);
rTable.appendChild(rTHead);
rTable.appendChild(rTBody);
// ratings array
var ratingsArr = [
// Formula RatingPct Localized TotalColored 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 (var 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);
// clean the old tables ( master badges, overall results and battle performance )
mb_table.innerHTML = "";
or_table.innerHTML = "";
bp_table.innerHTML = "";
// populating the tables
insertNewTr(mb_table, "
", locale.p33, vehBadges[4].c+"("+vehBadges[4].p+"%)");
insertNewTr(mb_table, "
", locale.p34, vehBadges[3].c+"("+vehBadges[3].p+"%)");
insertNewTr(mb_table, "
", locale.p35, vehBadges[2].c+"("+vehBadges[2].p+"%)");
insertNewTr(mb_table, "
", locale.p36, vehBadges[1].c+"("+vehBadges[1].p+"%)");
insertNewTr(mb_table, "
", locale.p37, vehBadges[0].c+"("+vehBadges[0].p+"%)");
insertNewTr(mb_table, "
", locale.p38, vehBadges[5].c+"("+vehBadges[5].p+"%)");
insertNewTr(or_table, locale.p39, filter(s.bats,2), colVehBatsTotal);
insertNewTr(or_table, locale.p40, filter(s.wins,2), "("+s.winsR+")");
insertNewTr(or_table, locale.p41, filter(s.loss,2), "("+s.lossR+")");
insertNewTr(or_table, locale.p42, filter(s.draw,2), "("+s.drawR+")");
insertNewTr(or_table, locale.p43, filter(s.surv,2), "("+s.survR+")");
insertNewTr(or_table, locale.p44, "", s.aBats.toFixed(2) );
insertNewTr(or_table, locale.p45, "", filter(s.exp,2));
insertNewTr(or_table, locale.p46, "", filter(s.expA,2));
insertNewTr(or_table, locale.p47, "", filter(s.expM,2));
insertNewTr(bp_table, locale.p48, filter(s.frag,2), s.aFrag.toFixed(2));
insertNewTr(bp_table, locale.p49, filter(s.dths,2), s.aDths.toFixed(2));
insertNewTr(bp_table, locale.p50, filter(s.spot,2), s.aSpot.toFixed(2));
insertNewTr(bp_table, locale.p51, "", s.hitsR);
insertNewTr(bp_table, locale.p52, filter(s.dmgD,2), s.dmgTier);
insertNewTr(bp_table, locale.p53, filter(s.dmgR,2), filter(s.aDmgR.toFixed(0),2));
insertNewTr(bp_table, locale.p54, filter(s.caps,2), s.aCaps.toFixed(2));
insertNewTr(bp_table, locale.p55, filter(s.defs,2), s.aDefs.toFixed(2));
insertNewTr(bp_table, locale.p56, "", s.aTier.toFixed(2));
// cake diagrams - adding tier diagram
var diagSector_class = document.getElementsByClassName('b-diagrams-sector')[0],
diagTier_div = document.createElement('div'),
diagTier_table = document.createElement('table'),
diagTier_td = 0,
diagTierColorArr = ["496877","2b591f","831818","303766","814f07","1A775F","B0D23A","763D46","936C19","471952"];
diagTier_div.className = "b-diagram-block b-diagram-tiers js-diagram-block";
diagTier_table.className = "t-dotted t-dotted__diagram js-diagram-mechanism-legend";
diagTier_div.innerHTML = ""+locale.p57+"
";
diagTier_table.innerHTML = "";
diagTier_div.appendChild(diagTier_table);
diagSector_class.firstElementChild.parentNode.insertBefore(diagTier_div, diagSector_class.firstElementChild.nextSibling);
for (var i in vehTiers) {
if (vehTiers.hasOwnProperty(i)) {
var diagTierColor = diagTierColorArr[diagTier_td];
diagTier_td ++;
if (vehTiers[i].c !== 0) {
diagTier_table.firstElementChild.innerHTML += " | "+filter(vehTiers[i].b,2)+"("+(vehTiers[i].b/s.bats*100).toFixed(2)+"%)"+vehTiers[i].c+"("+(vehTiers[i].c/vehAmount*100).toFixed(2)+"%)"+locale.p58+" "+diagTier_td+" | #"+diagTierColor+" |
";
}
}
}
diagSector_class.firstElementChild.innerHTML += ""+locale.p59+" "+vehAmount+"
";
// fix for cake diagram in chrome
if (navChrome) {
$('.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'),
medalHeader_div = document.createElement('div'),
medalHeader_class = document.getElementsByClassName('js-achievements-header')[0],
medalClassArr = ["b-profile-item-empty","js-achivements-showhide","js-short-achievements","js-full-achievements"];
medal_div.className = "b-achievements-wrpr";
medalHeader_div.className = "b-head-block";
medalHeader_div.appendChild(medalHeader_class);
medal_div.appendChild(medalHeader_div);
for (i=0; i"+locale.p60+""+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
var premHBody = document.createElement('tbody'),
premTBody = document.createElement('tbody');
vehTable_class.appendChild(premHBody);
if (premArr.length === 0) {
premHBody.innerHTML = "| "+locale.p62+" | – | – | – | |
";
}
else {
premHBody.className = "tablesorter-no-sort";
premHBody.innerHTML = "| "+locale.p62+" "+premArr.length+" | "+filter(tierStats.p.b,2)+" | "+colStat((tierStats.p.w/tierStats.p.b)*100, "wrv", 0, "%")+""+filter(tierStats.p.w,2)+" | "+tierStats.p.bg+" | |
";
premTBody.className = "sortable";
premTBody.style.display="none";
vehTable_class.appendChild(premTBody);
for (var i=0; i– | – | – | | ";
}
else {
tenHBody.className = "tablesorter-no-sort";
tenHBody.innerHTML = "| ✖"+locale.p68+" "+tenArr.length+" | "+filter(tierStats.t.b,2)+" | "+colStat((tierStats.t.w/tierStats.t.b)*100, "wrv", 0, "%")+""+filter(tierStats.t.w,2)+" | "+tierStats.t.bg+" | |
";
tenTBody.className = "sortable";
tenTBody.style.display="none";
vehTable_class.appendChild(tenTBody);
for (var i=0; i"+locale.p65+"";
}
// end tableBattles
}
// end wg_accounts
// matches url with clan page
else if (wg_clans !== null) {
// style contents
var style = document.createElement('style');
style.className = "wotstatscript";
style.type ="text/css";
style.innerHTML
// global rules
= "p {margin: 0;}"
// background image fix
+ "#js-background-parallax-translate3d-wrapper {z-index: -1;}"
// 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: -23px; 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 {"+cssUrl.input+" border-left: 1px solid #000000; border-right: 1px solid #000000; position: absolute; right: 0px; text-align: center; top: 0; 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; 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("+cssUrl.c14+") 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 {"+cssUrl.box+" background: url("+cssUrl.c13+"); border: 1px solid #2E3139; bottom: 0; padding: 10px 0; position: fixed; text-align: center; width: 953px;}"
+ ".b-clan-buttons .b-button {margin-bottom: 0;}"
// sidebar rules
+ ".l-sidebar {float: right; margin: -56px 0 0; 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: -1px; 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'),
clanHead_div = document.createElement('div'),
background_class = document.getElementsByClassName('b-background-clan-profile')[0],
infoWrapper_class = document.getElementsByClassName('b-wrap')[0];
clanWrpr_div.className = "b-clan-wrapper";
clanHead_div.className = "b-clan-header";
clanHead_div.innerHTML += scriptlink;
background_class.parentNode.insertBefore(clanWrpr_div, background_class.nextSibling);
clanHead_div.appendChild(infoWrapper_class);
clanWrpr_div.appendChild(clanHead_div);
// clan description
var 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.getElementsByClassName('b-text-info')[0].getElementsByTagName('span')[1].innerHTML,
sidebar_class = document.getElementsByClassName('b-context-menu_wrapper')[0],
wl_clan = "", nm_clan = "", wotcs_clan = "", replays = "";
if (!!wl_srv) {
wl_clan = "WoTLabs";
}
if (!!nm_srv) {
nm_clan = "Noobmeter";
wotcs_clan = "WoT-CS";
}
if (!!wr_srv) {
replays = "WoTReplays";
}
var clanStat = wl_clan+nm_clan+wotcs_clan+replays,
clanStat_div = document.createElement('ul');
clanStat_div.className = "b-context-menu-list b-clan-stat";
clanStat_div.innerHTML = ""+clanStat;
sidebar_class.appendChild(clanStat_div);
}
// end wg_clans
// helper functions
// filter
function filter(input, type) {
var inputStr = input.toString();
switch(type) {
case (1): // input string into number
return parseFloat(inputStr.replace(/[^\d]/g,""));
case (2): // output number with locale symbol
return inputStr.replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1"+locale.sym);
case (3): // remove all symbols
return inputStr.replace(/[^\w]/g,"");
default:
console.log("error filtering: ", input);
return input;
}
}
// colouring
function colStat(input, type, dec, sym, ext) {
var color = colArr.dft.col,
output = input.toFixed(dec);
if (sym) {
output += sym;
}
else if (type == "bat") {
output = filter(input,2);
}
else if (type == "dmg") {
output = filter(ext.toFixed(0),2);
}
if (type !== "") {
if (colRat[type]) {
color = colRat[type];
}
else if (type == "wrv") {
type = "wr";
for (var x in colArr){
if (colArr.hasOwnProperty(x)) {
if (input >= colArr[x][type]) {
color = colArr[x].col;
break;
}
}
}
}
else {
for (var x in colArr){
if (colArr.hasOwnProperty(x)) {
if (input >= colArr[x][type]) {
color = colArr[x].col;
break;
}
}
}
colRat[type] = color;
}
}
return ""+output+"";
}
// quick insertion of row into tables
function insertNewTr(table_parent, text_td, val_td, val2_td) {
var trNew = document.createElement('tr'),
tdNew_text = document.createElement('td'),
tdNew_value = document.createElement('td');
tdNew_text.innerHTML = text_td;
tdNew_value.innerHTML = val_td;
tdNew_text.className = "t-dotted_minor";
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() {
var 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];
cc_classCheckSeq ++;
if (ci_class !== null && ct_class === null) {
// clan info
var 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 and update profile height
if (vp_class) {
pn_class.appendChild(vp_class);
vp_class.style.display="inline-block";
profile_div.style.minHeight="156px";
}
// clan statistic links
var wl_clan = "", nm_clan = "", wn_clan = "", wlife_clan = "", wotcs_clan = "", replays = "";
if (!!wl_srv) {
wl_clan = "WoTLabs | ";
}
if (!!nm_srv) {
nm_clan = "Noobmeter | ";
wotcs_clan = "WoT-CS | ";
}
if (!!wn_srv) {
wn_clan = "Wot-news | ";
}
if (!!wlife_srv) {
wlife_clan = "WoT-Life | ";
}
if (!!wr_srv) {
replays = ""+locale.p67+" | WoTReplays | ";
}
var clanstat = "| "+locale.p66+" | "+wl_clan+nm_clan+wn_clan+"
| "+wotcs_clan+wlife_clan+"
"+replays+"
";
cc_class.innerHTML += "";
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),
nm_fmt = "No Rating";
if (!isNaN(nmpr)) {
nm_fmt = colStat(nmpr,"nm",2);
}
nmHnd_insert(nm_fmt, nmpr);
}
else {
nmHnd_error();
}
}
function nmHnd_error() {
nmHnd_insert("No Rating");
console.log("error accessing NoobMeter API");
return null;
}
function nmHnd_insert(nm_fmt, nmpr) {
var 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) {
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() {
var cpText = document.getElementsByClassName('ratingsClip-holder')[0].innerHTML,
cpLocale = document.getElementsByClassName('ratingsClip-holder')[1].innerHTML;
window.prompt(cpLocale, cpText);
}
// end global functions
// end script