Jak vytvořit mody pro World of Tanks. Jak nainstalovat mody pro tanky - pokyny krok za krokem Jaké mody pro wot jsou napsány

Příběh o vytvoření modifikace XVM (eXtended Visualization Mod) pro hru World of Tanks. V druhé části najdete popis historie vývoje serverové části modu.

starověké království

Jak jsem řekl v prvním díle, úplně první backend modu běžel na VPS, byl napsán v PHP a ukládal hráčskou základnu jako soubory v souborovém systému. Aby se zabránilo limitu 64 kB inodů (limit souborů v jednom adresáři je obvykle konfigurovatelný, ale zdálo se, že VPS má nastavení uzamčené), byla použita tříúrovňová struktura.

První dvě písmena přezdívky hráče se stala názvem prvního adresáře z kořene databáze. Další dvě písmena jsou název adresáře v něm vnořeného. A už v něm byly plain-soubory s daty hráčů a jmény rovnými přezdívkám.

Požadavky vypadaly takto: http://domain.com/users/ .

Každý hráč poslal svou vlastní žádost. To znamená, že z jedné bitvy mohlo přijít až 30 požadavků. Pravda, na straně klienta bylo použito cachování již viděných hráčů, což zátěž mírně snížilo. Poté bylo toto ukládání do mezipaměti opuštěno kvůli extrémně nízkému procentu náhodných zásahů.

I přes primitivnost měla tato implementace značnou výhodu – fungovala i na VPS a „tahala“ sto nebo dva požadavky za vteřinu.

Naděje

Po přechodu na plnohodnotný server byla neméně rychle podána další implementace, tentokrát na PHP + MySQL. Tehdy se nám zdálo, že pro náš úkol (dotazování jednoho záznamu po indexu), a dokonce běh na tak „výkonném“ hardwaru (EQ4: Intel Core i7-920, 8 GB DDR3, 2x 750 GB SATA II HDD) , můžeme použít všechny antivzory návrhu – a stále to bude fungovat. Realita jako obvykle nezklamala.

Co jsme tam tedy „farmovali“:

  1. Šablona žádosti byla samozřejmě ponechána tak, jak je.
  2. Požadavek byl zkontrolován běžným programem na podobnost s přezdívkou.
  3. Hledal jsem v databázi tuto přezdívku.
  4. Pokud to našli a nedávno to bylo aktualizováno, pak to uvedli v odpovědi.
  5. Pokud ho nenašli, nebo byl záznam příliš starý, pak začala zábava.
Bylo potřeba nějak získat data hráče. V té době neexistovala žádná veřejná API, takže první, co mě napadlo, bylo analyzovat stránku jako worldoftanks.ru/community/accounts/27030462-Alex . Je tu ale jeden problém: v URL stránky je kromě přezdívky i ID, které z požadavku nezískáme. Z tohoto důvodu je dalším bodem JZD stránka worldoftanks.ru/community/accounts, nebo spíše vyhledávací formulář na této stránce. Z naší aplikace odešleme jakoby požadavek AJAX, který opustil stránku vyhledávání hráčů. Jako odpověď dostáváme:

Request_data: ( echo: 0 filter_count: 210846 items: [ zkratka: "", account_url: "/community/accounts/27030462-Alex/", bitvy: 3737, clan_url: "", exp: 636853, id: 2703 "Alex", vyhraje: 1686 ], ….)
Vidíme, že nyní máme nejen id, ale i hotový odkaz. Vše se dá analyzovat.

Naštěstí se zhruba ve stejnou dobu objevila mobilní aplikace World of Tanks Assistant od Wargamingu. Aplikace docela zobrazovala statistiky libovolného hráče. Dobří lidé provedli průzkum a zjistili výměnný protokol.

Data byla nahrána do:
http://worldoftanks.ru/uc/accounts//api//?source_token=Intellect_Soft-WoT_Mobile-unofficial_stats
ApiVersion se rozrostla z 1,3 na 1,7 během doby, kdy jsme ji používali, a před objevením oficiálního API. U nás nebyly žádné rozdíly. Je pravda, že problém se získáním ID hráče před odesláním požadavku na API nezmizel.

A ano, pokud to někdo ještě nepochopil: požadavek na data hráče se objevil přímo při zpracování požadavku klienta.

Toto mistrovské dílo inženýrství fungovalo konzistentně při zatížení 200-300 požadavků za sekundu, což bylo jen o málo více než úplně první verze, která pracovala na statických souborech. Když se zátěž zvýšila, spočinuli jsme na CPU.

renesance

Chvíle, které server nezvládl, se zpočátku stávaly pouze v pátek a sobotu večer. Postupem času tyto "momenty" všechny přibývaly a přibývaly. Bylo zřejmé, že něco není v pořádku. Naše zatížení není rekordní, server není nejslabší. Problém zhoršoval fakt, že jsme neměli zkušené PHP specialisty. Stejně tak tam nebyli žádní zkušení * nix specialisté.

Posaďte se a přemýšlejte. Mysleli jsme na následující:

  1. Nejdůležitější je, že jsme začali vylepšovat klientskou stránku a našli způsob, jak získat nejen přezdívky hráčů, ale také ID.
  2. Optimalizujte požadavky klientů, abyste z jedné bitvy nevyžadovali hráče po jednom, ale všechny najednou.
  3. Vyzkoušejte luxusní balíček NodeJS + Mongo.
První verze uzlového serveru byla zničena. Nepoužil žádné frameworky. Pouze standardní moduly jako http a mongo. Server byl hardcore procedurální kód.

Žádosti začaly vypadat takto:

http://domena.com/users/ ,......

První možnost vykazovala povzbudivé výsledky – vytáhla až 100–150 požadavků za sekundu. Nové požadavky, pro 30 hráčů, tzn. to odpovídá ~4000 starým požadavkům na hráče. Více než 10násobný nárůst v důsledku změny technologie nás velmi ohromil, a protože v té době byla rezerva bezpečnosti velmi solidní, začali jsme rozvíjet „statistické“ schopnosti XVM.

Znovu se posadili k přemýšlení a rozhodli se udělat něco jako službu REST s následujícími metodami:

Možnost vyvinout serverovou část pro takovou technickou specifikaci v procedurálním stylu vyvolala špatné myšlenky, a tak jsme se rozhodli vyzkoušet další trendovou věc: express .

Musím říct, že předtím jsem s žádným MVC frameworkem neměl zkušenosti, ale i přes to jsem na to velmi rychle přišel a doslova za dva večery jsem udělal první funkční verzi. Obecně říkám nejvřelejší slova k vyjádření vývojářů pro možnost rychlého startu.

Výsledný server zaprvé fungoval dobře a zadruhé jeho kód na rozdíl od staré verze lahodil oku.

Na této vlně inspirace jsem se rozhodl „kráčet jako procházka!“ a přidal mangoose do projektu ODM. Kód se stal ještě krásnějším, když jsem prováděl testy na místním počítači, doslova jsem se nemohl nabažit toho, že vše krásně leží na svém místě a jak jednoduše a logicky vše funguje.

Je čas nasadit tuto krásu na server. Nasazeno. Zkontrolováno - funguje! Odešel na 20 minut Přijdu, zkontroluji - nefunguje to. Dívám se do konzole - proces uzlu běží. restartuji. Funguje několik sekund, pak - tlumeně.

Nebudu to dlouho natahovat: problém byl v CPU. Při tehdy obvyklé večerní zátěži varianta kódu bez mangusty tuto zátěž vtipně strávila, ale varianta s mangustou (přes všechnu její krásu) nikoliv. Musel jsem bohužel vrátit téměř všechny změny na několik dní.

Mraky se stahují

Na konci roku 2012 došlo k dalšímu nárůstu aktivity uživatelů XVM a náš skvělý server přestal zvládat zátěž. Abych byl upřímný, problémy byly i dříve, ale ne tak vážné. Nyní po večerech mod spíše nefungoval, než fungoval. Jako poslední možnost jsme dokonce přišroubovali příliš zaneprázdněný modul k serveru, což nám umožnilo zpracovat tolik požadavků, kolik hardware dokázal zvládnout, a zbytek přeskočit. Monitorování ukázalo akutní nedostatek paměti pro proces mongo. Rozhodli jsme se přejít na jiný server: EX-4S (i7-2600, 32 GB DDR3, 2x3 TB SATA III HDD).

přestěhovali jsme se. Cítit se lépe. Pravda, ne na dlouho.

Jakmile nastaly zimní prázdniny, problém nastal znovu. Za cenu jakéhokoli šamanismu nad kódem se nám podařilo dostat rychlost žádostí ze 150 na 180-200 za sekundu, ale stále to nestačilo. Jednoho z večerů, kdy vše téměř leželo, jsem kvůli ověření okomentoval blok kódu zodpovědný za aktualizaci „vypršelých“ hráčů pomocí WG API a ... fungovalo to. A není to špatné: dostali jsme stabilních 240 se špičkami až 260 požadavků/s. O několik dní později se zrodil kód, ve kterém byl aktualizátor hráčů rozdělen do samostatného nezávislého procesu a kód přímo interagující s klienty pouze přidal ID hráčů, které bylo třeba aktualizovat, do samostatné kolekce.

Tento upgrade nám vydržel asi měsíc. A znovu jsme viděli všechny stejné problémy: po večerech začaly chybět požadavky klientů. Tentokrát jsme narazili na IOPS. Bez dlouhého přemýšlení jsme v březnu 2013 objednali další vybavení pro náš server: 240GB SSD disk. Tehdy neexistovala žádná řada serverů s předinstalovanými SSD disky.

Pomohlo! Server začal stahovat až 380-400 požadavků/s. Asi půl roku vše fungovalo docela hladce a nezpůsobovalo žádné zvláštní stížnosti uživatelů. V srpnu 2013 jsme přešli na nově představený EX40-SSD, protože lépe vyhovoval našim účelům a byl levnější než EX-4S s přídavným SSD.

A na konci roku 2013... uhodli jste správně, měli jsme stejný problém. Navíc tentokrát neexistovala žádná zjevná a jednoduchá řešení. Poslední čarodějnictví nad kódem je hotovo. Server je docela dobrý. q4x2, který *nix specialista zase „zkroutil“ server „jak nejlépe jsem uměl“.

Obsah /etc/sysctl.conf pro zájemce

# Konfigurační soubor sysctl jádra pro Red Hat Linux
#
# Pro binární hodnoty je 0 zakázána, 1 je povolena. Viz sysctl(8) a
# sysctl.conf(5) pro více podrobností.

# Ovládá předávání IP paketů
net.ipv4.ip_forward = 0

# Ovládá ověření zdrojové trasy
net.ipv4.conf.default.rp_filter = 1

# Neakceptujte směrování zdroje
net.ipv4.conf.default.accept_source_route = 0

# Řídí funkci ladění systémových požadavků jádra
kernel.sysrq=0

# Řídí, zda výpisy jádra připojí PID k názvu souboru jádra.
# Užitečné pro ladění vícevláknových aplikací.
kernel.core_uses_pid = 1

# Řídí používání TCP syncookies
net.ipv4.tcp_synccookies=1

# Řídí výchozí maximální velikost fronty zpráv
kernel.msgmnb=65536

# Řídí maximální velikost zprávy v bajtech
kernel.msgmax = 65536

# Řídí maximální velikost sdíleného segmentu v bajtech
kernel.shmmax = 68719476736

# Řídí maximální počet segmentů sdílené paměti ve stránkách
kernel.shmall = 4294967296
net.core.somaxconn=262144
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_tw_recycle=1
net.core.netdev_max_backlog = 10 000
net.ipv4.tcp_synccookies=1
net.ipv4.tcp_max_syn_backlog=262144
net.ipv4.tcp_max_tw_buckets=720000
net.ipv4.tcp_timestamps=1
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_keepalive_time=1800
net.ipv4.tcp_keepalive_probes=7
net.ipv4.tcp_keepalive_intvl=30
net.core.wmem_max = 33554432
net.core.rmem_max = 33554432
net.core.rmem_default = 8388608
net.core.wmem_default = 4194394
net.ipv4.tcp_rmem = 4096 8388608 16777216
net.ipv4.tcp_wmem = 4096 4194394 16777216
net.ipv4.tcp_fin_timeout = 15
fs.epoll.max_user_watches = 1000000

fs.file-max = 5000000
net.core.netdev_max_backlog = 100 000
net.core.optmem_max = 10000000
net.core.rmem_default = 10000000
net.core.rmem_max = 10000000
net.core.somaxconn = 1000000
net.core.wmem_default = 10000000
net.core.wmem_max = 10000000
net.ipv4.ip_local_port_range = 1024 65535
net.ipv4.tcp_synccookies=1
net.ipv4.tcp_max_syn_backlog=12000
net.ipv4.tcp_max_tw_buckets=2000000
net.ipv4.tcp_mem = 30000000 30000000 30000000
net.ipv4.tcp_rmem = 30000000 30000000 30000000
net.ipv4.tcp_wmem = 30000000 30000000 30000000
net.netfilter.nf_conntrack_max=1048576


Všeobecně bylo uděláno vše, co se dalo udělat s trochou krve. Již jsme začali přemýšlet o nákupu druhého nebo třetího serveru a nastavení balancování.
Ale jednoho večera jsme se v rozhovoru s q4x2 hádali, že ne všechny platformy jsou stejně užitečné. A jednoduše řečeno, přesvědčil mě, že všechny naše potíže byly způsobeny NodeJS a že je připraven vytvořit svou vlastní verzi serveru v Javě, která by „rozbila“ Node do britské vlajky. Silně jsem o tom pochyboval, ale souhlasil jsem s účastí na experimentu, a když už to bylo, rozhodl jsem se zkusit něco nativního.

Jelikož jsem jako obvykle chtěl něco nového, padla volba na D a vibed framework. Kupodivu i mně, který se poslední tři roky věnuji téměř výhradně JS, se podařilo poměrně rychle vymýšlet pracovní verzi. Vyvinul jsem to pod Windows. Ale při nasazení pod Centos 6.5 jsme měli velké potíže s uspokojením závislostí. Linker musel ručně předepisovat samozřejmé věci.

Obtíže se nepodařilo překonat až do konce, takže experiment s D byl předčasně ukončen. Samotný jazyk se nám velmi líbil, ale zatím má bohužel problémy se sadou nástrojů.

Zatímco jsme to všechno psali, server to po večerech nezvládal: bylo málo CPU. Rozhodli jsme se tedy pro další přesun, tentokrát na PX90-SSD (Xeon E5-1650 v2, 64 GB ECC DDR3, 2 x 240 GB SSD).

Úsvit nové éry

Než se server Node stačil zaradovat ze dvou nových jader, q4x2 spustil svůj Java server. Kód mi připomněl úplně první verzi serveru Node: vše v jednom souboru v procedurálním stylu. Postupně jsme kód dovedli do božské podoby, ale i tak bylo jasné (po zbavení se dětských boláků), o kolik rychlejší je tato možnost Node. Co se týče zátěže CPU – asi čtyřnásobek. Během špičkových hodin, při ~500 žádostech/s, je jedno jádro používáno hlavním procesem Java. Pro verzi Node na čtyřjádru byla taková zátěž nedosažitelná a na šestijádru byla velmi blízko limitu.

Právě v tuto chvíli jsme se rozhodli zavést aktivaci statistik na našem webu. To znamenalo, že přístupové tokeny přijaté klienty budou putovat po síti s každým požadavkem. Abychom je trochu zabezpečili, byl server hostován za HTTPS. A pak nás čekalo další překvapení.

O něco výše jsem zmínil dětské boláky java kódu. Mezitím jsme je pár týdnů ošetřovali, java kód nefungoval o moc lépe než ten starý a bylo velmi pravděpodobné, že šestihlavý server nevytáhne proxy + https.

Aby se nečekalo na zázrak, hned byl zakoupen další server: EX40 (i7-4770, 32 GB DDR3, 2 x 2 TB HDD), aby byl frontendem a tahal https. Němci vyrobili server, ale s jedním malým problémem, jak se později ukázalo: byla mu přidělena IP v rozsahu 5.x.x.x. Udělali jsme na něm frontend a vše fungovalo skvěle, ale na fóru se začaly hromadit stížnosti od lidí, kteří nefungovali.

Po malém průzkumu tohoto problému jsme zjistili, že problém s 5.x.x.x je známá věc, souvisí s aplikací zvanou Hamachi. Navíc se nové verze Hamachi přesunuly na 25.x.x.x (zajímalo by mě, jestli tihle kluci v podstatě nechtějí používat privátní sítě pro své účely?), ale to nám to nijak neusnadnilo. Musel jsem se přesunout zpět na hlavní server, protože v té době už zvládal celou naši ekonomiku sám a dokonce se solidní zásobou.

Celkově v tuto chvíli máme celý backend: náš kód + databáze běží na stejném serveru. Průměrné zatížení zřídka přesahuje jedničku. Nyní jsme ale vymysleli další reorganizaci serverové farmy s přesunem databáze na samostatný server. Jeden z důvodů: Mongo velmi špatně snáší studený start - po restartu neutáhne ani polovinu zátěže, kterou utáhne po zahřátí (kvůli tomu byly mimochodem 3. srpna problémy -4). Přenos na samostatný server vám umožní nedotýkat se jej. Dalším důvodem je, že máme nějaké nápady na vývoj modu, který bude vyžadovat výrazné zvětšení velikosti databáze. Současné 2*240GB nemusí stačit. Obecně lze říci, že problém backendu na naší straně je vyřešen. Ten druhý zůstává.

Boj proti Wargaming API

Druhým největším problémem po samotném výkonu serveru, vždy jsme měli aktualizace statistik hráčů. Všichni naši uživatelé ze zřejmých důvodů věnují tak či onak pozornost statistikám her a většina z nich chce, aby byly tyto statistiky aktualizovány co nejčastěji (ideálně v reálném čase). A na cestě k vyřešení tohoto problému jsme vždy měli WG API. Nebo spíše jeho omezení.

Nejdůležitějším problémem je pro nás omezení počtu požadavků z jedné IP. V době, kdy ještě nebylo veřejné API, byl limit na IP cca 10 požadavků/sec. Byli jsme, mírně řečeno, málo. Proto se dostali ven, jak nejlépe mohli: měli jsme několik proxy serverů, přes které byly odesílány požadavky API.

S příchodem API se to z hlediska dostupného limitu trochu zjednodušilo. Naší aplikaci byl přidělen prémiový status, který nám teoreticky dává právo provádět 50 žádostí/sec. A pak začíná ALE:

  1. Ve staré verzi (ne veřejné API, data pro mobilní aplikaci) byla všechna data, která jsme potřebovali pro každého hráče, shromažďována jednou metodou. A s příchodem veřejného API se data přerozdělovala podle různých metod a pro každého hráče jsme museli zadat dva požadavky (/account/info/ , /account/tanks/).
  2. Tyto metody podporují dotazování více hráčů najednou (až 100). To znamená, že bychom teoreticky mohli požadovat až 5000 hráčů/s. Ve skutečnosti ale požadavek na /účet/tanky/ pro 100 hráčů trval ~45 sekund a pokud jsou posílány příliš často, začnou hromadně odpadávat.
    Pokusem a omylem byl nalezen recept na relativně stabilní práci: požadavek na 20 hráčů každé 2 vteřiny. Ano, vrátilo nás to na 10 hráčů/s. Vzhledem k nedostatečnosti této hodnoty byla období aktualizace pro uživatele našeho modu a pro všechny ostatní odlišena.
    Aktualizujeme uživatele 3-4krát častěji. Například nyní uživatelé vstupují do fronty aktualizací po 3 a zbytek - 11 dní po předchozí aktualizaci.
  3. Po nějaké době WG zavedlo novou metodu - /tanks/stats/ . Metoda poskytovala mnohem podrobnější statistiky o tankech hráče ve srovnání s /účet/tanky/ a my jsme ji přirozeně chtěli získat. Ale! Tato metoda nepodporuje dotazování na seznam hráčů. Jen jeden. A to nebylo to nejhorší: horší je, že tato metoda poskytla některým hráčům neexistující tanky.
    Zde je příklad zaslaný technické podpoře WG, který ukazuje téměř dvojnásobnou nesrovnalost v hodnotách těchto dvou metod. Po malém průzkumu jsme zjistili, že údaje na nádržích, které hráč skutečně má, jsou správné. Nesprávné jsou pouze údaje o nádržích, které tam nejsou. Pro nás to znamená, že nyní musíme pro každý účet zadat tři požadavky: /account/info/, /account/tanks/, /tanks/stats/. Navíc /account/tanks/ je potřeba pouze k získání aktuálního seznamu tanků a vyřazení nepotřebných z výsledků /tanks/stats/.
    To vše vedlo k tomu, že nyní se rychlost aktualizace snížila na 8 účtů / sec. Doufáme, že jednoho dne budeme schopni dělat stovky/s a splní se sen mnoha uživatelů, když ne o reálném čase, tak alespoň o denních aktualizacích.
  4. Vyskytly se i drobné chyby: například po rozdělení německého tanku PzIV na modifikace Pz_IV_AusfD, Pz_IV_AusfH a Pz_IV_AusfA se přirozeně změnila ID těchto tanků. Ale po dlouhou dobu API u některých účtů vydávalo staré ID=17, které odpovídalo nesdílenému PzIV. A metodu /encyklopedie/tanky/, ze které zjišťujeme úroveň a typ tanku, toto ID již neobsahovalo, což občas vedlo k úsměvným výsledkům při výpočtu hodnocení.
Naštěstí je nyní možné na takové zázraky posílat hlášení o chybách. Dříve byla jediná odpověď: nemáte povoleno používat cizí ID aplikace (?source_token=Intellect_Soft-WoT_Mobile-unofficial_stats). To znamená, že pomalu, ale jistě začaly změny k lepšímu. Byli jsme bráni vážně. Takže čekáme, doufáme a věříme!

Tím končí druhá část příběhu. Před námi bude další část, která bude vyprávět o tom nejzajímavějším - vývoji klientské části modifikace.

Štítky:

  • Wargaming
  • wargaming.net
  • XVM
  • měřič sobů
  • gamedev
  • vývoj hry
  • programování
  • wargaming_inside
Přidat štítky

Příběh o vytvoření modifikace XVM (eXtended Visualization Mod) pro hru World of Tanks. V druhé části najdete popis historie vývoje serverové části modu.

starověké království

Jak jsem řekl v prvním díle, úplně první backend modu běžel na VPS, byl napsán v PHP a ukládal hráčskou základnu jako soubory v souborovém systému. Aby se zabránilo limitu 64 kB inodů (limit souborů v jednom adresáři je obvykle konfigurovatelný, ale zdálo se, že VPS má nastavení uzamčené), byla použita tříúrovňová struktura.

První dvě písmena přezdívky hráče se stala názvem prvního adresáře z kořene databáze. Další dvě písmena jsou název adresáře v něm vnořeného. A už v něm byly plain-soubory s daty hráčů a jmény rovnými přezdívkám.

Požadavky vypadaly takto: http://domain.com/users/ .

Každý hráč poslal svou vlastní žádost. To znamená, že z jedné bitvy mohlo přijít až 30 požadavků. Pravda, na straně klienta bylo použito cachování již viděných hráčů, což zátěž mírně snížilo. Poté bylo toto ukládání do mezipaměti opuštěno kvůli extrémně nízkému procentu náhodných zásahů.

I přes primitivnost měla tato implementace značnou výhodu – fungovala i na VPS a „tahala“ sto nebo dva požadavky za vteřinu.

Naděje

Po přechodu na plnohodnotný server byla neméně rychle podána další implementace, tentokrát na PHP + MySQL. Tehdy se nám zdálo, že pro náš úkol (dotazování jednoho záznamu po indexu), a dokonce běh na tak „výkonném“ hardwaru (EQ4: Intel Core i7-920, 8 GB DDR3, 2x 750 GB SATA II HDD) , můžeme použít všechny antivzory návrhu – a stále to bude fungovat. Realita jako obvykle nezklamala.

Co jsme tam tedy „farmovali“:

  1. Šablona žádosti byla samozřejmě ponechána tak, jak je.
  2. Požadavek byl zkontrolován běžným programem na podobnost s přezdívkou.
  3. Hledal jsem v databázi tuto přezdívku.
  4. Pokud to našli a nedávno to bylo aktualizováno, pak to uvedli v odpovědi.
  5. Pokud ho nenašli, nebo byl záznam příliš starý, pak začala zábava.
Bylo potřeba nějak získat data hráče. V té době neexistovala žádná veřejná API, takže první, co mě napadlo, bylo analyzovat stránku jako worldoftanks.ru/community/accounts/27030462-Alex . Je tu ale jeden problém: v URL stránky je kromě přezdívky i ID, které z požadavku nezískáme. Z tohoto důvodu je dalším bodem JZD stránka worldoftanks.ru/community/accounts, nebo spíše vyhledávací formulář na této stránce. Z naší aplikace odešleme jakoby požadavek AJAX, který opustil stránku vyhledávání hráčů. Jako odpověď dostáváme:

Request_data: ( echo: 0 filter_count: 210846 items: [ zkratka: "", account_url: "/community/accounts/27030462-Alex/", bitvy: 3737, clan_url: "", exp: 636853, id: 2703 "Alex", vyhraje: 1686 ], ….)
Vidíme, že nyní máme nejen id, ale i hotový odkaz. Vše se dá analyzovat.

Naštěstí se zhruba ve stejnou dobu objevila mobilní aplikace World of Tanks Assistant od Wargamingu. Aplikace docela zobrazovala statistiky libovolného hráče. Dobří lidé provedli průzkum a zjistili výměnný protokol.

Data byla nahrána do:
http://worldoftanks.ru/uc/accounts//api//?source_token=Intellect_Soft-WoT_Mobile-unofficial_stats
ApiVersion se rozrostla z 1,3 na 1,7 během doby, kdy jsme ji používali, a před objevením oficiálního API. U nás nebyly žádné rozdíly. Je pravda, že problém se získáním ID hráče před odesláním požadavku na API nezmizel.

A ano, pokud to někdo ještě nepochopil: požadavek na data hráče se objevil přímo při zpracování požadavku klienta.

Toto mistrovské dílo inženýrství fungovalo konzistentně při zatížení 200-300 požadavků za sekundu, což bylo jen o málo více než úplně první verze, která pracovala na statických souborech. Když se zátěž zvýšila, spočinuli jsme na CPU.

renesance

Chvíle, které server nezvládl, se zpočátku stávaly pouze v pátek a sobotu večer. Postupem času tyto "momenty" všechny přibývaly a přibývaly. Bylo zřejmé, že něco není v pořádku. Naše zatížení není rekordní, server není nejslabší. Problém zhoršoval fakt, že jsme neměli zkušené PHP specialisty. Stejně tak tam nebyli žádní zkušení * nix specialisté.

Posaďte se a přemýšlejte. Mysleli jsme na následující:

  1. Nejdůležitější je, že jsme začali vylepšovat klientskou stránku a našli způsob, jak získat nejen přezdívky hráčů, ale také ID.
  2. Optimalizujte požadavky klientů, abyste z jedné bitvy nevyžadovali hráče po jednom, ale všechny najednou.
  3. Vyzkoušejte luxusní balíček NodeJS + Mongo.
První verze uzlového serveru byla zničena. Nepoužil žádné frameworky. Pouze standardní moduly jako http a mongo. Server byl hardcore procedurální kód.

Žádosti začaly vypadat takto:

http://domena.com/users/ ,......

První možnost vykazovala povzbudivé výsledky – vytáhla až 100–150 požadavků za sekundu. Nové požadavky, pro 30 hráčů, tzn. to odpovídá ~4000 starým požadavkům na hráče. Více než 10násobný nárůst v důsledku změny technologie nás velmi ohromil, a protože v té době byla rezerva bezpečnosti velmi solidní, začali jsme rozvíjet „statistické“ schopnosti XVM.

Znovu se posadili k přemýšlení a rozhodli se udělat něco jako službu REST s následujícími metodami:

Možnost vyvinout serverovou část pro takovou technickou specifikaci v procedurálním stylu vyvolala špatné myšlenky, a tak jsme se rozhodli vyzkoušet další trendovou věc: express .

Musím říct, že předtím jsem s žádným MVC frameworkem neměl zkušenosti, ale i přes to jsem na to velmi rychle přišel a doslova za dva večery jsem udělal první funkční verzi. Obecně říkám nejvřelejší slova k vyjádření vývojářů pro možnost rychlého startu.

Výsledný server zaprvé fungoval dobře a zadruhé jeho kód na rozdíl od staré verze lahodil oku.

Na této vlně inspirace jsem se rozhodl „kráčet jako procházka!“ a přidal mangoose do projektu ODM. Kód se stal ještě krásnějším, když jsem prováděl testy na místním počítači, doslova jsem se nemohl nabažit toho, že vše krásně leží na svém místě a jak jednoduše a logicky vše funguje.

Je čas nasadit tuto krásu na server. Nasazeno. Zkontrolováno - funguje! Odešel na 20 minut Přijdu, zkontroluji - nefunguje to. Dívám se do konzole - proces uzlu běží. restartuji. Funguje několik sekund, pak - tlumeně.

Nebudu to dlouho natahovat: problém byl v CPU. Při tehdy obvyklé večerní zátěži varianta kódu bez mangusty tuto zátěž vtipně strávila, ale varianta s mangustou (přes všechnu její krásu) nikoliv. Musel jsem bohužel vrátit téměř všechny změny na několik dní.

Mraky se stahují

Na konci roku 2012 došlo k dalšímu nárůstu aktivity uživatelů XVM a náš skvělý server přestal zvládat zátěž. Abych byl upřímný, problémy byly i dříve, ale ne tak vážné. Nyní po večerech mod spíše nefungoval, než fungoval. Jako poslední možnost jsme dokonce přišroubovali příliš zaneprázdněný modul k serveru, což nám umožnilo zpracovat tolik požadavků, kolik hardware dokázal zvládnout, a zbytek přeskočit. Monitorování ukázalo akutní nedostatek paměti pro proces mongo. Rozhodli jsme se přejít na jiný server: EX-4S (i7-2600, 32 GB DDR3, 2x3 TB SATA III HDD).

přestěhovali jsme se. Cítit se lépe. Pravda, ne na dlouho.

Jakmile nastaly zimní prázdniny, problém nastal znovu. Za cenu jakéhokoli šamanismu nad kódem se nám podařilo dostat rychlost žádostí ze 150 na 180-200 za sekundu, ale stále to nestačilo. Jednoho z večerů, kdy vše téměř leželo, jsem kvůli ověření okomentoval blok kódu zodpovědný za aktualizaci „vypršelých“ hráčů pomocí WG API a ... fungovalo to. A není to špatné: dostali jsme stabilních 240 se špičkami až 260 požadavků/s. O několik dní později se zrodil kód, ve kterém byl aktualizátor hráčů rozdělen do samostatného nezávislého procesu a kód přímo interagující s klienty pouze přidal ID hráčů, které bylo třeba aktualizovat, do samostatné kolekce.

Tento upgrade nám vydržel asi měsíc. A znovu jsme viděli všechny stejné problémy: po večerech začaly chybět požadavky klientů. Tentokrát jsme narazili na IOPS. Bez dlouhého přemýšlení jsme v březnu 2013 objednali další vybavení pro náš server: 240GB SSD disk. Tehdy neexistovala žádná řada serverů s předinstalovanými SSD disky.

Pomohlo! Server začal stahovat až 380-400 požadavků/s. Asi půl roku vše fungovalo docela hladce a nezpůsobovalo žádné zvláštní stížnosti uživatelů. V srpnu 2013 jsme přešli na nově představený EX40-SSD, protože lépe vyhovoval našim účelům a byl levnější než EX-4S s přídavným SSD.

A na konci roku 2013... uhodli jste správně, měli jsme stejný problém. Navíc tentokrát neexistovala žádná zjevná a jednoduchá řešení. Poslední čarodějnictví nad kódem je hotovo. Server je docela dobrý. q4x2, který *nix specialista zase „zkroutil“ server „jak nejlépe jsem uměl“.

Obsah /etc/sysctl.conf pro zájemce

# Konfigurační soubor sysctl jádra pro Red Hat Linux
#
# Pro binární hodnoty je 0 zakázána, 1 je povolena. Viz sysctl(8) a
# sysctl.conf(5) pro více podrobností.

# Ovládá předávání IP paketů
net.ipv4.ip_forward = 0

# Ovládá ověření zdrojové trasy
net.ipv4.conf.default.rp_filter = 1

# Neakceptujte směrování zdroje
net.ipv4.conf.default.accept_source_route = 0

# Řídí funkci ladění systémových požadavků jádra
kernel.sysrq=0

# Řídí, zda výpisy jádra připojí PID k názvu souboru jádra.
# Užitečné pro ladění vícevláknových aplikací.
kernel.core_uses_pid = 1

# Řídí používání TCP syncookies
net.ipv4.tcp_synccookies=1

# Řídí výchozí maximální velikost fronty zpráv
kernel.msgmnb=65536

# Řídí maximální velikost zprávy v bajtech
kernel.msgmax = 65536

# Řídí maximální velikost sdíleného segmentu v bajtech
kernel.shmmax = 68719476736

# Řídí maximální počet segmentů sdílené paměti ve stránkách
kernel.shmall = 4294967296
net.core.somaxconn=262144
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_tw_recycle=1
net.core.netdev_max_backlog = 10 000
net.ipv4.tcp_synccookies=1
net.ipv4.tcp_max_syn_backlog=262144
net.ipv4.tcp_max_tw_buckets=720000
net.ipv4.tcp_timestamps=1
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_keepalive_time=1800
net.ipv4.tcp_keepalive_probes=7
net.ipv4.tcp_keepalive_intvl=30
net.core.wmem_max = 33554432
net.core.rmem_max = 33554432
net.core.rmem_default = 8388608
net.core.wmem_default = 4194394
net.ipv4.tcp_rmem = 4096 8388608 16777216
net.ipv4.tcp_wmem = 4096 4194394 16777216
net.ipv4.tcp_fin_timeout = 15
fs.epoll.max_user_watches = 1000000

fs.file-max = 5000000
net.core.netdev_max_backlog = 100 000
net.core.optmem_max = 10000000
net.core.rmem_default = 10000000
net.core.rmem_max = 10000000
net.core.somaxconn = 1000000
net.core.wmem_default = 10000000
net.core.wmem_max = 10000000
net.ipv4.ip_local_port_range = 1024 65535
net.ipv4.tcp_synccookies=1
net.ipv4.tcp_max_syn_backlog=12000
net.ipv4.tcp_max_tw_buckets=2000000
net.ipv4.tcp_mem = 30000000 30000000 30000000
net.ipv4.tcp_rmem = 30000000 30000000 30000000
net.ipv4.tcp_wmem = 30000000 30000000 30000000
net.netfilter.nf_conntrack_max=1048576


Všeobecně bylo uděláno vše, co se dalo udělat s trochou krve. Již jsme začali přemýšlet o nákupu druhého nebo třetího serveru a nastavení balancování.
Ale jednoho večera jsme se v rozhovoru s q4x2 hádali, že ne všechny platformy jsou stejně užitečné. A jednoduše řečeno, přesvědčil mě, že všechny naše potíže byly způsobeny NodeJS a že je připraven vytvořit svou vlastní verzi serveru v Javě, která by „rozbila“ Node do britské vlajky. Silně jsem o tom pochyboval, ale souhlasil jsem s účastí na experimentu, a když už to bylo, rozhodl jsem se zkusit něco nativního.

Jelikož jsem jako obvykle chtěl něco nového, padla volba na D a vibed framework. Kupodivu i mně, který se poslední tři roky věnuji téměř výhradně JS, se podařilo poměrně rychle vymýšlet pracovní verzi. Vyvinul jsem to pod Windows. Ale při nasazení pod Centos 6.5 jsme měli velké potíže s uspokojením závislostí. Linker musel ručně předepisovat samozřejmé věci.

Obtíže se nepodařilo překonat až do konce, takže experiment s D byl předčasně ukončen. Samotný jazyk se nám velmi líbil, ale zatím má bohužel problémy se sadou nástrojů.

Zatímco jsme to všechno psali, server to po večerech nezvládal: bylo málo CPU. Rozhodli jsme se tedy pro další přesun, tentokrát na PX90-SSD (Xeon E5-1650 v2, 64 GB ECC DDR3, 2 x 240 GB SSD).

Úsvit nové éry

Než se server Node stačil zaradovat ze dvou nových jader, q4x2 spustil svůj Java server. Kód mi připomněl úplně první verzi serveru Node: vše v jednom souboru v procedurálním stylu. Postupně jsme kód dovedli do božské podoby, ale i tak bylo jasné (po zbavení se dětských boláků), o kolik rychlejší je tato možnost Node. Co se týče zátěže CPU – asi čtyřnásobek. Během špičkových hodin, při ~500 žádostech/s, je jedno jádro používáno hlavním procesem Java. Pro verzi Node na čtyřjádru byla taková zátěž nedosažitelná a na šestijádru byla velmi blízko limitu.

Právě v tuto chvíli jsme se rozhodli zavést aktivaci statistik na našem webu. To znamenalo, že přístupové tokeny přijaté klienty budou putovat po síti s každým požadavkem. Abychom je trochu zabezpečili, byl server hostován za HTTPS. A pak nás čekalo další překvapení.

O něco výše jsem zmínil dětské boláky java kódu. Mezitím jsme je pár týdnů ošetřovali, java kód nefungoval o moc lépe než ten starý a bylo velmi pravděpodobné, že šestihlavý server nevytáhne proxy + https.

Aby se nečekalo na zázrak, hned byl zakoupen další server: EX40 (i7-4770, 32 GB DDR3, 2 x 2 TB HDD), aby byl frontendem a tahal https. Němci vyrobili server, ale s jedním malým problémem, jak se později ukázalo: byla mu přidělena IP v rozsahu 5.x.x.x. Udělali jsme na něm frontend a vše fungovalo skvěle, ale na fóru se začaly hromadit stížnosti od lidí, kteří nefungovali.

Po malém průzkumu tohoto problému jsme zjistili, že problém s 5.x.x.x je známá věc, souvisí s aplikací zvanou Hamachi. Navíc se nové verze Hamachi přesunuly na 25.x.x.x (zajímalo by mě, jestli tihle kluci v podstatě nechtějí používat privátní sítě pro své účely?), ale to nám to nijak neusnadnilo. Musel jsem se přesunout zpět na hlavní server, protože v té době už zvládal celou naši ekonomiku sám a dokonce se solidní zásobou.

Celkově v tuto chvíli máme celý backend: náš kód + databáze běží na stejném serveru. Průměrné zatížení zřídka přesahuje jedničku. Nyní jsme ale vymysleli další reorganizaci serverové farmy s přesunem databáze na samostatný server. Jeden z důvodů: Mongo velmi špatně snáší studený start - po restartu neutáhne ani polovinu zátěže, kterou utáhne po zahřátí (kvůli tomu byly mimochodem 3. srpna problémy -4). Přenos na samostatný server vám umožní nedotýkat se jej. Dalším důvodem je, že máme nějaké nápady na vývoj modu, který bude vyžadovat výrazné zvětšení velikosti databáze. Současné 2*240GB nemusí stačit. Obecně lze říci, že problém backendu na naší straně je vyřešen. Ten druhý zůstává.

Boj proti Wargaming API

Druhým největším problémem po samotném výkonu serveru, vždy jsme měli aktualizace statistik hráčů. Všichni naši uživatelé ze zřejmých důvodů věnují tak či onak pozornost statistikám her a většina z nich chce, aby byly tyto statistiky aktualizovány co nejčastěji (ideálně v reálném čase). A na cestě k vyřešení tohoto problému jsme vždy měli WG API. Nebo spíše jeho omezení.

Nejdůležitějším problémem je pro nás omezení počtu požadavků z jedné IP. V době, kdy ještě nebylo veřejné API, byl limit na IP cca 10 požadavků/sec. Byli jsme, mírně řečeno, málo. Proto se dostali ven, jak nejlépe mohli: měli jsme několik proxy serverů, přes které byly odesílány požadavky API.

S příchodem API se to z hlediska dostupného limitu trochu zjednodušilo. Naší aplikaci byl přidělen prémiový status, který nám teoreticky dává právo provádět 50 žádostí/sec. A pak začíná ALE:

  1. Ve staré verzi (ne veřejné API, data pro mobilní aplikaci) byla všechna data, která jsme potřebovali pro každého hráče, shromažďována jednou metodou. A s příchodem veřejného API se data přerozdělovala podle různých metod a pro každého hráče jsme museli zadat dva požadavky (/account/info/ , /account/tanks/).
  2. Tyto metody podporují dotazování více hráčů najednou (až 100). To znamená, že bychom teoreticky mohli požadovat až 5000 hráčů/s. Ve skutečnosti ale požadavek na /účet/tanky/ pro 100 hráčů trval ~45 sekund a pokud jsou posílány příliš často, začnou hromadně odpadávat.
    Pokusem a omylem byl nalezen recept na relativně stabilní práci: požadavek na 20 hráčů každé 2 vteřiny. Ano, vrátilo nás to na 10 hráčů/s. Vzhledem k nedostatečnosti této hodnoty byla období aktualizace pro uživatele našeho modu a pro všechny ostatní odlišena.
    Aktualizujeme uživatele 3-4krát častěji. Například nyní uživatelé vstupují do fronty aktualizací po 3 a zbytek - 11 dní po předchozí aktualizaci.
  3. Po nějaké době WG zavedlo novou metodu - /tanks/stats/ . Metoda poskytovala mnohem podrobnější statistiky o tankech hráče ve srovnání s /účet/tanky/ a my jsme ji přirozeně chtěli získat. Ale! Tato metoda nepodporuje dotazování na seznam hráčů. Jen jeden. A to nebylo to nejhorší: horší je, že tato metoda poskytla některým hráčům neexistující tanky.
    Zde je příklad zaslaný technické podpoře WG, který ukazuje téměř dvojnásobnou nesrovnalost v hodnotách těchto dvou metod. Po malém průzkumu jsme zjistili, že údaje na nádržích, které hráč skutečně má, jsou správné. Nesprávné jsou pouze údaje o nádržích, které tam nejsou. Pro nás to znamená, že nyní musíme pro každý účet zadat tři požadavky: /account/info/, /account/tanks/, /tanks/stats/. Navíc /account/tanks/ je potřeba pouze k získání aktuálního seznamu tanků a vyřazení nepotřebných z výsledků /tanks/stats/.
    To vše vedlo k tomu, že nyní se rychlost aktualizace snížila na 8 účtů / sec. Doufáme, že jednoho dne budeme schopni dělat stovky/s a splní se sen mnoha uživatelů, když ne o reálném čase, tak alespoň o denních aktualizacích.
  4. Vyskytly se i drobné chyby: například po rozdělení německého tanku PzIV na modifikace Pz_IV_AusfD, Pz_IV_AusfH a Pz_IV_AusfA se přirozeně změnila ID těchto tanků. Ale po dlouhou dobu API u některých účtů vydávalo staré ID=17, které odpovídalo nesdílenému PzIV. A metodu /encyklopedie/tanky/, ze které zjišťujeme úroveň a typ tanku, toto ID již neobsahovalo, což občas vedlo k úsměvným výsledkům při výpočtu hodnocení.
Naštěstí je nyní možné na takové zázraky posílat hlášení o chybách. Dříve byla jediná odpověď: nemáte povoleno používat cizí ID aplikace (?source_token=Intellect_Soft-WoT_Mobile-unofficial_stats). To znamená, že pomalu, ale jistě začaly změny k lepšímu. Byli jsme bráni vážně. Takže čekáme, doufáme a věříme!

Tím končí druhá část příběhu. Před námi bude další část, která bude vyprávět o tom nejzajímavějším - vývoji klientské části modifikace.

Štítky:

Přidat značky webu Verze: - Aktualizováno: 24. ledna 2018

Instalace modů do her může být skličující úkol. Ve World of Tanks ale vývojáři zpočátku přidali podporu pro vlastní úpravy, takže ve složce hry je speciální složka pro mody s názvem res_mods , která má úpravy na starosti.

Teorie fungování modů

Podívejme se, jak to vše obecně ve Wotu funguje. Nejprve hra načte všechny prostředky ze složky res, která obsahuje herní soubory, jako je zvuk, textury, modely, skripty a další. To vše je ve World of Tanks zabaleno do archivů, aby se hra načítala o něco rychleji. Ve skutečnosti si odtud můžeme vzít soubor, který potřebujeme (například skin tanku) a změnit ho. Poté jej vložíme zpět a nahradíme stávající soubor. A všechno bude fungovat. Tato metoda je ale nepohodlná, za prvé bychom museli ukládat původní soubory pro případ, že by nic nefungovalo, a za druhé, když je hodně modů, nebudeme moci toto všechno smazat, protože si musíme pamatovat, co a kde hodili jsme to.

K tomu existuje složka res_mods, poté, co hra načte soubory ze složky res, načte soubory z res_mods , a pokud existuje soubor, který již byl načten ze složky res, hra vezme poslední možnost, tedy náš upravený ze složky res_mods . Takto se vše dělá ve World of Tanks tak pohodlným způsobem.

Jak nainstalovat mody ve World of Tanks?

V tuto chvíli jsou ve World of Tanks dvě složky pro úpravy. První je mods , objevil se nedávno a je potřeba pro mody, které jsou zabalené a mají formát .wotmods. Druhá složka byla skoro od samého začátku, to je res_mods , je potřeba pro rozbalené mody.

Obě tyto složky v sobě obsahují více složek s číslem aktuální verze hry nyní 1.6.1.0 a složky starších verzí lze jednoduše smazat, aby nepřekážely.

Na našem webu v každém modu píšeme, jak jej nainstalovat. Úpravy ale často zveřejňujeme již spolu s potřebnými složkami, a proto stačí stažený archiv otevřít a zkopírovat (nebo rozbalit či přenést obsah myší, to je totéž) do složky, kde máte World of Tanks nainstalován.

Poznámka: Pokud jste během instalace hry nic nezměnili, pak jsou tanky nainstalovány v C:\\Games\World_of_Tanks . Ve skutečnosti je to složka s hrou.

Vždy si přečtěte popis k modu, VŽDY přesně napíšeme, jak ten či onen mod nainstalovat. Níže je uveden seznam možných nastavení.

Možnosti instalace úprav

  • Rozbalte archiv do složky World of Tanks - Zde je vše jednoduché, otevřete stažený archiv, myší vyberte vše, co tam je a přeneste do složky s nainstalovanou hrou.
  • Zkopírujte složku mods (nebo res_mods) do složky World of Tanks - Vše je stejné jako v předchozí verzi, ale když je to tak napsáno, pak může být v archivu více složek, například s fonty nebo dodatečným modem možnosti, takže pokud zkopírujete vše najednou, nebude fungovat nic.
  • Rozbalte archiv do složky World of Tanks\mods\1.6.1.0 (nebo World of Tanks\res_mods\1.6.1.0) - Téměř stejné jako předtím, ale nyní po vstupu do složky hry musíte jít dále do modů ( nebo res_mods) a poté do 1.6.1.0 a tam zkopírujte obsah staženého archivu.
  • Instalace písem – Je to jednoduché, v archivu je složka s názvem „font“, přejděte do ní, poté dvakrát klikněte na každý soubor a po otevření písma klikněte na „instalovat“. Všechno. Nemusíte nic kopírovat.
  • Spustit instalační program (nebo Spustit program) – V tomto případě se obvykle jedná buď o programy nebo modpacky s instalačními programy. Není potřeba nic kopírovat, stačí dvakrát kliknout a je to.

Odinstalování modulů World of Tanks

Chcete-li odebrat konkrétní mod, musíte vědět, jaké soubory byly nainstalovány, a jednoduše je odstranit. A abyste odstranili VŠECHNY mody z tanků, stačí vymazat složky mods/1.6.1.0 a res_mods/1.6.1.0. Ale v žádném případě nemažte samotné složky 1.6.1.0, jinak se hra prostě nespustí.

Každý hráč v moderních počítačových hrách používá mody. Může to být nový příběh, další strategie, funkce hráče nebo spuštění některých funkcí ve hře.

World of Tanks nebyl výjimkou, takže naučit se nainstalovat mod ve World of Tanks nebude nikdy zbytečné. A i když se prozatím snadno obejdete bez dalších možností, možná si budete chtít v budoucnu zjednodušit život, spustit nové funkce svých tanků nebo udělat bitvy realističtější. A co je pro to potřeba udělat - na to hned přijdeme.

Jaké jsou úpravy

Výběr dalších modů v Tanks je působivý. Všechny mody lze rozdělit do skupin. Zvažte nejvýznamnější z nich:

  1. Zvuk
  2. Grafický
  3. památky
  4. Hangáry
  5. Olenemer.

Začněme tím nejzáhadnějším – posledním, kterému se říká sob. Říká se mu také „metr jelena“ a „metr uživatele“. Toto slovo označuje novou funkci ve světě, která vám umožní zjistit více o hráčích – jejich statistiky, počet vítězství a tak dále. Je považován za jeden z nejužitečnějších modů, protože hráč vždy ví, s kým má co do činění.

Modifikátor „hangáry“, jak název napovídá, vám umožňuje zcela změnit vzhled vašeho hangáru ve strategii.

Doplněk "zaměřovače" umožňuje změnit základní zaměřovač na nový. Například na zaměřovači od Jove, který si oblíbili především hráči, protože dokáže ukázat dobu nabíjení, přiblížení, dostupnou odolnost tanku, počet granátů v bubnu a mnoho dalšího.

Úpravy zvuku vám umožní změnit hlasové hraní hry, takže vaše oblíbené „tanky“ zní novým způsobem. Vylepšují zvukový design, díky čemuž jsou exploze, výstřely, příkazy a řev housenek realističtější. Existuje jich několik typů a každý z nich může vytvořit svou vlastní bojovou atmosféru. Jsou instalovány stejným způsobem.

Grafické úpravy se také dělí na několik poddruhů. Patří mezi ně funkce, která vám umožní vidět slabá místa v pancíři tanků. Funkce zvaná „bílé mrtvoly“ pomáhá vidět, jak se nepřítel po bitvě skrývá. Kromě toho můžete pomocí instalace zesvětlit železniční nástupiště, natřít sjeté koleje bílou barvou, zlepšit viditelnost na dálku a mnoho dalšího. To vše hodně pomáhá v boji.

Chcete-li tyto možnosti použít, musíte je nejprve nainstalovat do herního klienta.

Jak nainstalovat mody na world of tanks

Všechna dodatečná nastavení ve wot lze nastavit samostatně, ale mnohem jednodušší je pracovat s celým balíčkem najednou - tzv. modpacky. Obsahují různé herní modifikace navržené tak, aby zjednodušily strategii a učinily ji pohodlnější a pohodlnější.

Nejoblíbenější je „Modpack od Jove“, ale existuje také spousta balíčků od jiných vývojářů. Každý si najde výběr podle svých představ. Jejich instalace je snadná – jako běžný program pomocí jednoduchého instalátoru.

Výběr dalších modů v Tanks je působivý

Strategie krok za krokem, jak nainstalovat mody na World of tanks

Takže začneme:

  1. Přejděte do složky s herním klientem. Nejčastěji jej najdete na následující adrese:
  2. D: /World of Tanks/.
  3. Hledám /res_mods. Tato složka se vytváří automaticky, je potřeba, aby si hráči mohli sami nainstalovat požadované úpravy.
  4. Vytvoříme složku s názvem použitého herního patche, tedy jeho aktuální verze. Například - /0. 9.13.

Pro instalaci tedy budete muset projít následující cestou: D / World of Tanks / res_mods / 0. 9.13.

Nové mody zlepšují kvalitu hry

Jak nainstalovat mody na wot: zlepšit zrak

Ne vše je ale tak jednoduché jako ve výše popsaném případě. Některé upgrady, například mnoho oborů, budou vyžadovat vytvoření dalších složek. V důsledku toho se před instalací modů na wot vytvoří složka v dokumentu /0. 9. 13 a je v něm několik dalších.

Celá cesta bude vypadat takto:

  • V souboru /0. 9. 13. vytvořte soubor gui
  • Vytvořte dokument scaleform v gui
  • Kontrolujeme cestu. Vypadá to takto: D /World of Tanks/res_mods/0. 9.13.0/gui/scaleform

Na vytváření dalších složek ve wotu vlastně není nic složitého, takže s instalací různých doplňků strategie většinou nebývají problémy.

Zlepšení kvality recenze

Zlepšení zvuku

Instalace pokročilých nastavení zvuku je poměrně jednoduchá. Musíte si je stáhnout na webu, obvykle se soubor nazývá / audio. Soubor s herním klientem bude mít stejný soubor a vše je třeba zkopírovat do složky hry. Kopírujeme s výměnou aktuálních dokumentů tak, aby mod šel.

Před instalací nezapomeňte zavřít herního klienta.

Mods pro World of Tanks: o tancích a doplňcích do hry. Typy úprav a důvody jejich instalace. Návod na instalaci modů + TOP 10 nejlepších + srovnání 3 nejlepších modpacků na internetu.

Přestože má World of Tanks širokou škálu funkcí, většině hráčů chybí maličkosti, které mohou tankovací proces mnohonásobně zpestřit.

K vyřešení tohoto problému mnoho řemeslníků v síti vyvíjí mody pro World of Tanks. O tancích a herním prostředí, jaké doplňky jsou k dispozici a jak je nainstalovat - na tyto a další otázky odpovíme v našem dnešním článku.

co je móda?

Přehoz- softwarový doplněk do hlavního herního klienta, který umožňuje měnit/vylepšovat prvky mechaniky a vizuálních efektů.

Zlepšení bojového výkonu, pomocné informační obrazovky – tyto a další transformace umožňují hráči upravit si herní rozhraní podle svých představ a preferencí designu.

Proč dávat mody pro World of Tanks?

  1. Rozšiřte funkčnost obrněných vozidel.
  2. Zvyšte standardní parametry nádrží.
  3. Dolaďte jednotlivé herní prvky.
  4. Změňte vizuální prezentaci jednotlivých lokalit.
  5. Přizpůsobte si soundtrack podle svého vkusu.
  6. Chcete-li získat více statistik a dalších podpůrných informací, které vám umožní lépe se orientovat v akcích nepřátelského tanku.

Seznam je nekonečný - počet rozšíření je velmi velký. Na přání má uživatel možnost změnit design a mechaniku jednotlivých prvků tanku k nepoznání.

Jaké jsou mody pro World of Tanks o tancích a jak je nainstalovat?

Za dobu existence hry World of Tanks se počet modů exponenciálně rozrostl. Dnes může majitel tanku proměnit svou zbraň ve skutečnou nespoutanou sílu a zničit nepřítele jednou salvou.

Některé mechanické změny jsou považovány za podvádění, následované zmrazením účtu, takže musíte rozlišovat mezi mody několika způsoby.

Mody pro World of Tanks podle metody vývoje jsou:

  • Oficiální - vydávají zaměstnanci společnosti, která hru vyvinula. Jejich kvalita je řádově vyšší než u ostatních + změny se týkají z větší části vnějšího designu.
  • Copyright - takové mody o tancích vyrábějí řemeslníci. Kvalita kresby ne vždy odpovídá vysoké nebo dokonce průměrné úrovni. Většina změn se týká jemného ladění tanků ve hře.

Pokud oficiální mody ovlivňují hru minimálně, pak se mody copyright dělí na přípustné a podvádění(tedy ty, které dávají převahu nad nepřátelským tankem kvůli změnám ve fyzice nebo herních mechanismech). Ty druhé jsou v používání zakázány, a pokud se jejich použití prokáže, uživatel bude čelit trvalému zákazu herního účtu.

Chcete-li používat pokročilé funkce, musíte nejprve nainstalovat mody. Přidělit soukromé programy a celé sestavy("modpacky"). To druhé bude podrobněji probráno níže.

1. Schéma instalace modu pro World of Tanks.

  1. Najděte složku hry. Ve výchozím nastavení (pokud jste nezměnili složku v klientovi) je umístěn na stejném disku jako operační systém "C"

    Pokročilejší uživatelé dají klienta na disk bez OS – tím ušetří data při reinstalaci operačního systému. Příklad cesty - C:/World of Tanks/

  2. Dále najděte uvnitř složku s názvem "res_modes". Byl vytvořen vývojáři speciálně za účelem instalace modů do hlavního herního klienta.
  3. Najděte složku s verzí hry uvnitř, a pokud tam není, vytvořte ji. Konečná cesta by měla vypadat zhruba takto - "C:/World of Tanks/res_modes//0.9.22"

    Hodnota verze produktu není konstantní, protože nové záplaty jsou vydávány minimálně jednou měsíčně

  4. V 60-70% - to je vše, co je potřeba, ale některé mody pro tanky vyžadují vytvoření dalších složek (pro více podrobností vyhledejte informace na webu, kde si mod stahujete)

    Například pro památky potřebujete další dvě podsložky - "/gui" a "/scaleform". Pak bude konečná cesta rozbalení prvků − "C:/World of Tanks/res_modes//0.9.22/gui/scaleform"

Tento algoritmus pro instalaci modů se používá jak pro nádrž, tak pro další prvky rozhraní.

2. Jak nainstalovat zvukový mod pro World of Tanks?

Na netu je ještě jeden typ modů, které mohou hráči měnit – audio. Pokud vás omrzely standardní zvuky výstřelů nebo hluk housenek, tyto změny jsou přesně to, co potřebujete.
  1. Stáhněte si archiv modů, který se vám líbí, z tematické stránky pro hru World of Tanks.
  2. Najděte složku herního klienta na pevném disku.
  3. Najděte ve složce se zvukovým doprovodem ke hře. Nejčastěji má způsob - C:/World of Tanks/audio.
  4. Zkopírujte zvukové soubory ze staženého archivu do nalezené náhradní složky.

Před instalací jakéhokoli modu pro tanky nebo pro účely dekorace nezapomeňte zavřít herního klienta. Pokud tato operace nebude provedena, může dojít ke konfliktům mezi modifikacemi a již zabudovaným softwarem, což povede k vyřazení ze hry nebo úplnému zastavení její práce.

3. Jaké jsou nejoblíbenější tankové mody?

    Konverze cíle.

    Základní zaměřovač nemůže poskytnout dostatek informací pro posouzení situace, proto má hráč pomocí vylepšení možnost výrazně pokročit v bojové taktice a zvýšit svou efektivitu.

    Doba nabíjení zbraně, zoom, protivník, kapacita/dostupnost munice – tyto a další údaje začátečníkovi výrazně pomohou orientovat se i v kritických situacích.

    Převod grafiky.


    Jedná se o mody pro tanky pro změnu vizualizace během bitvy.

    Takové úpravy vám umožní vidět zranitelnost tanku, prostřílet rozbitá nepřátelská vozidla, zvýšit viditelnost obrněného vozidla a také mnoho dalších drobností, jejichž použití usnadní život běžnému hráči ve World of Nádrže.

    Zvukové transformace.

    To zahrnuje celou řadu zvukových efektů - výstřely, světlo, krity a tak dále.

    Transformace hangárů.

    Vizuální složka, která neovlivňuje samotnou hru. Slouží k dodání patřičné atmosféry hře.

    Transformujte statistiky obrazovky.

    Zvýšení informačního obsahu závěrečné obrazovky po bitvě + možnost sledovat velké množství parametrů v reálném čase.

Balíčky nebo jednotlivé mody – co je lepší?

Pokud jste ve světě World of Tanks nováčky, používání balíčků výrazně zjednoduší proces instalace modů na tanky. Nemusíte ručně rozbalovat a hledat cíl modu. Vše, co musíte udělat, je spustit instalační program a postupovat podle pokynů krok za krokem.

Modů pro tanky je mnohem více, než jsme popsali výše. Jsou některé, které nezapadají do žádné z kategorií. Stáhněte si mod samostatně nebo použijte balíček - je to na vás.

Berte v úvahu pouze fakt, že při použití balíčku modů pro tanky nebudete mít plný výběr – počet úprav obsažených v sestavě je omezený a nemusí vždy uspokojit nároky náročných hráčů WOT.

Nejlepší mody pro World of Tanks o tancích a herním prostředí: TOP-10


Po všeobecném seznámení profiltrujme síť a vyberme ty nejlepší mody v různých směrech, které dokážou udělat herní proces nejpohodlnějším, a to jak pro začátečníka, tak pro profesionálního tankistu.

Je nemožné vzít v úvahu subjektivní názory všech, ale existují takové mody pro tanky, které jsou povinné pro použití naprosto každým.

Při sestavování topu jsme se řídili průzkumy oficiálních herních fór World of Tanks. Každý z modů si na svého klienta nainstalovalo více než 50 % uživatelů hry (z těch, kteří tankové mody obecně používají).

1) ZAMIŘTE „DAMOKLŮV MEČ“.

Schopnost přesné střelby je pro hráče ve World of Tanks základem. Bohužel základní zaměřovač je z hlediska funkčnosti velmi omezený, takže změna tohoto prvku je první věcí, kterou musíte udělat po instalaci herního klienta.

Mod pro tank "Damoclův meč" v objednávce na rok 2017-2018. je nejlepším řešením v sekci památky.

Funkce modu:

  • mířidla pro odstřelovačskou a arkádovou střelbu;
  • specializovaný umělecký zrak;
  • ukazatele průniku pancíře a úplné informace o schopnostech zaměřovače;
  • je možné vypočítat časový interval letu bojového projektilu;
  • koreluje indikace dosahu cíle a vašeho potenciálu k porážce;
  • ukazuje rychlost pohybu nepřátelského tanku;
  • UVN + poloměr fragmentace nádrže.

Všechny informace, které mod poskytuje, dobře zapadají do rozhraní a nezasahují do boje. S využitím dat o soupeři moudře bude profesionální hráč schopen předvést akrobacii ve World of Tanks a začátečník výrazně zjednoduší trénink a zlepší taktické dovednosti.

2) POŠKOZENÍ PANELU OD LOCASTANU.

Mod panelu poškození, který umožňuje řidičům tanků vylepšit základní sadu funkcí ve World of Tanks. Úprava byla vyvinuta na základě známého autorského panelu od Stlite.

Rozdíly v módě od analogů:

  • možnost zobrazení protokolu poškození nádrže;
  • jsou zobrazeny odrazy odskoků granátů;
  • moduly nádrží jsou průhledné, dokud se nepoškodí - tento přístup usnadňuje analýzu situace jako celku;
  • odpočítávání pro opravu modulů nádrží;
  • jasný indikátor požáru.

Tento mod je k dispozici ve 3 verzích:

  • První panel bude odpovídat popisu výše.
  • Druhá modifikace bude umístěna ve středu obrazovky a bude obsahovat informace o modulech tanku.
  • Třetí zvýrazňuje údaje o opravách, které budou rovněž umístěny v centru.

3) BOJOVÉ ROZHRANÍ Z-MOD OD MARSOFF.

Nové dílo od slavného moddera. Rozhraní tohoto modu pro tanky kombinuje jen ty nejlepší prvky v boji. Na první pohled se panel může zdát obtížně vnímatelný, ale po pár soubojích oceníte možnosti tohoto modu.

Vlastnosti modu:

  • odstraněné arkádové a umělecké památky;
  • žádný panel ladění;
  • není tam žádný časovač, který zobrazuje čas tanku v bitvě;
  • chybí minimapy s přehledem;
  • Na minimapě není žádný dělostřelecký zaměřovač.

Rozhraní se zbavilo spousty zbytečných prvků a veškerá funkčnost je nyní uspořádána na tomto minimalistickém panelu.

V úpravě byl indikátor vzniku požáru v blízkosti nádrže a odpočítávání opravy modulů - nejnutnějších prvků. Rychloměr je nyní umístěn ve střední části obrazovky poblíž zaměřovače tanku.

4) CHYTRÁ MINIMAPA PRO SVĚT TANKŮ Z LOCASTANU.

V nových klientských záplatách vývojáři rozšířili funkcionalitu základního nástroje, ale informací je stále málo, protože hráči stále hledají na netu kvalitní mody minimap – toto je jeden z nich.

Dodatky provedené modem:

  • přidány kruhy recenzí;
  • přidán kruh kreslení;
  • odpovídající značky jsou zobrazeny v místech, kde byly zničeny nepřátelské tanky;
  • velikost ikon tanků byla zvětšena;
  • doladění informací poskytovaných uživateli.

Základní funkce také nezmizely. Světlo nepřátelského tanku, UGN, směr paprsku děla - to vše zůstane na svých správných místech.

Mod byl sestaven s ohledem na přání stovek hráčů World of Tanks, což znamená, že úprava pozitivně ovlivní kvalitu hry pro začátečníky i profesionální tankisty.

5) SKINY ESTHET OD SERGEY EMETS PRO WORLD OF TANKS.

Ve WOT přesáhl počet vojenských vozidel 360 jednotek a každé vozidlo má silné i slabé stránky. Aby se předešlo pravděpodobnějším nepříjemným překvapením, byl vyvinut speciální mod pro tanky, který vám umožní zjistit tloušťku pronikání pancíře jakéhokoli vozidla ve hře.

Stupeň zranitelnosti závisí na barvě dané modem:

  • modrá - popisuje obrys palivových sekcí nádrže;
  • zelená - popisuje obrys motoru bojového vozidla;
  • fialová - obrys pro pokládání brnění;
  • červená - zranitelnosti nádrže, kde je nejsnazší ji prorazit.

Další podobné módy World of Tanks jsou příliš vágní, někdy je prostě nemožné rozlišit mezi zónami. Jak název napovídá, je to estetika prezentace, která odlišuje tento mod od ostatních - všechny problémové oblasti jsou pouze naznačeny a nejsou zcela vyplněny barvou.

Bonusem jsou ikony, které signalizují hráči polohu posádky uvnitř tanku, což usnadní otřesení některého z nich. Mod obsahuje zóny průniku tanků od úrovní 4 do 10 včetně. Tato sada je jednou z největších a nejfunkčnějších ve hře.

6) MOD ZMĚNIT HANGARY STISKNUTÍM TLAČÍTKA PŘÍMO V HANGARU.

Počet modů pro hangáry ve hře je obrovský. „Skiny“ vyrábí každý, kdo není příliš líný, a proto podle subjektivního názoru nemá smysl z této sekce něco vybírat.

Rádi bychom vás upozornili na mod, který vám umožní měnit hangáry ve World of Tanks, aniž byste opustili herní rozhraní. Aby mod fungoval, stačí vybrat hangár z rozevíracího seznamu a potvrdit tlačítkem "Uložit". Všechny změny se projeví okamžitě.

K dispozici je mod, který se nachází ve složce "skiny". Úprava funguje se základními i prémiovými hangáry.

7) WOTLOGGER3 PRO SVĚT TANKŮ.


Statistiky jsou jedním z nejdůležitějších ukazatelů, které vám umožňují analyzovat bitvy a najít kořen problému. Základní funkcionalita klienta je více než špatná, takže instalace modu pro tanky podle statistik je povinným krokem, pokud plánujete hrát WOT déle než pár týdnů.

Jaké funkce modul přidává:

  • statistiky všech odehraných bitev za zadané časové období;
  • filtry pro výběr soubojů s vítězstvími/porážkami;
  • zobrazení celého seznamu bitev s velkým množstvím pomocných dat;
  • je k dispozici seskupení bitev podle určitých kritérií.

Mod je neustále aktualizován a přizpůsobován tankům v souladu s přáními uživatelů.

Zpočátku byl tento mod prezentován jako program, který musel být spuštěn mimo klientský prostor. V dalších aktualizacích bylo rozhodnuto zabudovat modifikaci, která výrazně zjednodušuje život hráčů World of Tanks při studiu výkonu jejich bitev.

8) DEER/XVM PRO SVĚT TANKŮ.

Nejoblíbenější mod mezi řidiči tanků – denně jej používá více než 3 500 000 hráčů ve World of Tanks. Může za to jeho obrovská funkčnost, se kterou si ani zkušení tankisté hned neporadí.

Co mod sobi umí:

  • ukázat efektivitu bitvy s tanky jak soupeřů, tak spojenců ve zbrani;
  • udává počet vítězství/porážek pro každý tanker;
  • s přihlédnutím k výše uvedeným dvěma bodům vypočítá pravděpodobnost výhry v procentech;
  • obsahuje protokol poškození během bitvy;
  • vylepšuje minimapu a přidává do ní pomocná data o tancích;
  • vestavěné světelné indikátory;
  • indikuje rychlost vašeho internetového připojení - indikátory na základně a v hangáru;
  • přidán indikátor signalizující útok na základnu - udává počet tanků + odpočítávání do úplného obsazení;
  • změnilo se i značení nad nádržemi.

Odeslaný seznam je pouze špičkou ledovce modu, jeho plnou funkčnost odhalí hráč již na tanku během samotné bitvy. Počet různých pleťových vod je velmi velký, takže si stáhněte instalační a konfigurační pokyny s modem, protože bude velmi problematické pochopit složitosti modifikace sami.

Vývojáři vytvořili dva typy modů pro tanky - Light a Full verze. Verze "light" je určena pro slabé počítače a obsahuje pouze stopovač sobů a záznam zásahů.

9) ZAMĚŘTE "STAPLE" PRO SVĚT TANKŮ.

Jeden z nových modů pro zlepšení výhledu na tank. Barevné provedení v tyrkysových tónech nebolí oči a zlepšuje viditelnost v problémových partiích. Design se sice nedá přiřadit ke standardu, ale po 5-7 bitvách v tancích tento pohled snadno přijmete do svého arzenálu úprav.

Funkce modu:

  • změna fráze pro opětovné načtení;
  • Procenta zdraví byla nahrazena lištou XP;
  • jako indikátor průrazu poslouží nábojnice velkého kalibru.

Tento mod je jedním z nejvíce medializovaných mezi nestandardními. Aktualizace se týkají všech typů zaměřovačů, což vám umožní vychutnat si kvalitní bitvy v tancích v jakémkoli typu lokace.

10) PROJEKT WOT-MOD - MOD MANAGER.

Podívali jsme se na velké množství modů. Co když ale chcete nainstalovat několik úprav najednou a zachovat si možnost je rychle měnit? Stejně jako v případě hangárů si tankový hráč může zjednodušit život jednoduchým programem, který zvládá všechny nainstalované módy World of Tanks.

Funkčnost programu:

  • možnost instalovat / odebírat nebo dočasně deaktivovat mody prostřednictvím rozhraní programu;
  • je možné vytvořit balíček modů sami a zde nebudete potřebovat hluboké znalosti programování;
  • dobře se hodí pro testování modů na tancích - pro tento účel byly vytvořeny deaktivační modifikace.

Podrobné pokyny pro použití modu pro World of Tanks jsou poskytovány spolu s programem, ale i dítě zde může pochopit složitost práce. Jedná se o šikovný nástroj pro ty, kteří rádi testují mody v tancích, ale nechtějí se neustále handrkovat s úpravami ručně.

Vybrali jsme jen ty nejlepší mody pro World of Tanks o tancích a prostředí ve hře. Každý z nich dokáže kvalitativně odrážet schopnosti vašeho vozu a rozvinout jeho plný potenciál.

Jaký balíček pro World of Tanks vybrat?

Tématu mod packů jsme se již dotkli o něco výše. Sestavit vyvážený modpack je umění, které zvládne jen opravdový fanoušek World of Tanks.

Kritéria výběru modpacku:

    Počet modů v balení.

    Neznamená to, že by nebylo jasné, co přijde. Všechny modifikace musí být nárokovány tankovými hráči.

    Kvalita modu.

    Používání pochybných sestav může poškodit nejen herního klienta, ale celý počítač jako celek. Balíček musí obsahovat oficiálně schválené modifikace.

    Pouze v tomto případě se nemůžete starat o bezpečnost osobních údajů v zařízení.

    Výzdoba.

    Instalační program by měl mít intuitivní rozhraní a nenamáhat oči uživatele.

    Frekvence aktualizace.

    Velmi důležitý parametr, protože přímo závisí na tom, zda budou mody fungovat na klientovi nebo ne. Vzhledem k častým aktualizacím hry musí autor na tyto změny rychle reagovat a podle toho upravit sestavu.

Vzhledem ke všemu výše uvedenému jsme vybrali tři nejlepší modpacky, které 100% splňují stanovené podmínky. Pro přehlednost je uspořádáme do podoby srovnávací tabulky, kde můžete z vlastního subjektivního pohledu zhodnotit všechny přednosti a obsah každého z nich.

Jak získat výraznou výhodu nad nepřítelem?

Nejlepší mody pro World of Tanks.

Srovnávací tabulka 3 nejlepších modů na netu.

Móda od AMWAY921Móda od JOVE (JOVE)Móda od PROTANKI
1. eXtended Visualization Mod - rozšířené markery, poškození zpětným úderem, úprava zajetí základny a protokol poškození.Zaměřovač Super Jova.Standardní rozsah s časovačem opětovného načtení.
2. Automatická detekce aktuálního pohledu na nádrž.Průhledné zatmění v režimu odstřelovače."Jovova volba" - OverCross. Minimalistický zaměřovač založený na výchozím zaměřovacím kříži hry.
3. Náhrada standardních zvuků hry: „Call“, když jsou moduly kriticky poškozené, a zvuk, když je spuštěn perk „6th Sense“.Různé panely poškození."MathMod MeltyMap". Mod rozhraní vyvinutý hráči z EU clusteru.
4. Vylepšený ukazatel směru útoku.Inteligentní minimapy, jak v XVM, tak v alternativních."Commander Camera" - mod pro maximální vzdálenost kamery v arkádovém režimu.
5 Vylepšený indikátor počtu střel.Žárovky "Šestý smysl" + hlasové hraní pro ně."Disable sway" - deaktivuje pohyb kamery v odstřelovacím režimu.
6. Prodlužte dobu zobrazení „žárovky“, když se spustí perk „6. smysl“.Různé hlasové projevy.Informace o respawnu při načítání do bitvy. Místo „nápovědy“ v načítací obrazovce.
7. Zobrazení samostatné značky pro TT10 na minimapě.informativní značky.Můžete změnit chování kamery - mod pro deaktivaci efektů při poškození.
8. SafeShot: Zabraňuje střelbě na nově zničené tanky.Zoom mod.Zaměřovač serveru - tento mod ukazuje, kam směřuje pohled na váš tank podle herního serveru.
9. Odstranění kamufláží, log a nápisů na tancích.Průhledné maskovací kůže a bílé mrtvoly tanků.Rozšířená statistika. Mod pro zobrazení vašich celkových výsledků za aktuální herní relaci.
10. Mířidla s pokročilými funkcemi.Zvětšený rozsah výhledu na mapách s mlhou.Značky XVM nad vozidly nahrazují standardní značky tanků informativnějšími.
11. Vlastní panely poškození: Standardní panel poškození a vlastní panel poškození.Statistika relace."Povolit tankový karusel" - několik modů pro přizpůsobení seznamu tanků v hangáru.
12. Zakázat blikání a blikání obrazu při poškození.Wot Replays Manager je program pro práci s přehráváním.Horizontální úhly. Nepostradatelný mod pro tanky bez věže nebo s omezenou rotací.
13. Elevační úhly pro Art-SPG a Fri-SPG.Nejlepší pancéřová kalkulačka s přihlédnutím k úhlu sklonu střely.Informační panel vybraného cíle. Mod zobrazuje základní informace o soupeřově tanku.
14. Zoom: příkaz kamery s možností deaktivace dynamických efektů kamery.WoT Tweaker je program pro zvýšení FPS vypnutím různých efektů.Sudy s nepřáteli na minimapě.
15. NoScroll: Sniper rozsah pouze po stisknutí "Shift"Směry nepřátelských sudů na minimapě.Značka směru poškození.
16. ZoomX: vícepolohový odstřelovací dalekohled (x2, x4, x8, x16).Kruh pro střelbu invis z křoví.Kalkulačka hodnocení v bitvě.
17. Odstranění stínování v odstřelovacím dalekohledu.Modní bílé mrtvoly tanků a housenek.Upozorněte spojence na světlo.
18. Podrobné statistiky pro relaci na serveru.Vylepšený x25 zoom v dalekohledu odstřelovače.Bílé tanky. Podobně jako u bílých vozů pomáhá „dostat“ protivníky zpoza krytu.
19. Barevné zprávy o výsledcích bitvy.HP tanky v uších (ve 2 verzích).Bílé sestřelené housenky. Mod jasně ukazuje stav podvozku protivníků nebo spojenců.

V tabulce jsou uvedeny pouze nejvýznamnější součásti balení, které musí být v jakékoli sestavě.

Všechny 3 možnosti jsou na vrcholu hodnocení oblíbenosti, ale první místo drží "Pro tanky". Na tomto projektu pracuje celá skupina specialistů. Po nových záplatách World of Tanks jsou to právě tito borci, kdo jako první vydali aktualizovanou verzi sestavení pro změněné verze klienta.

Používejte mody pro World of Tanks o tancích- znamená zlepšit produktivitu každé bitvy o 40-50%. A pokud profesionál používá modifikace, tak 100%.

Někteří považují použití modů za podvádění, ale oficiálně schválená funkční vylepšení dávají tankerovi svobodu ve hře a přináší ještě větší potěšení z procesu. A to je u tanků to nejdůležitější!