Исходный код world of tanks
It's the full source code of the site (and related tools) WotClans. It tracks the performance of clan players on the World of Tanks (for consoles) game, by Wargaming.
To understand the choosen architeture it's relevant to understand some of the history of the site, and the costs constraints that were applied everywhere.
The site started because I wanted to easily track my performance, and of my some of my clan, without entering the pages on WoTInfo to every player.
I setup an agreement with Stan (WoTInfo owner) that kindly allowed me to query their pages, and I did so for many years. You can still find code that parses his pages, altought I now calculate my own WN8 values.
The other major constraint for the site was cost of running it. I live in Brazil, and altought (for my country standards) I'm rich enough to dedicate my time to the site, and foot the bill, I can't pay much for hosting, even on Amazon or Azure. So I payed for the cheapest hosting I could find, on SmarterASP.
Their service, despise being cheap, is very good. But this site needs a lot of database and some continuing running proccesses, and that makes it not cheap.
But it happens that I own a (small!) company in Brazil and, with the agreement of my partners, I started to use spare CPU time and Database space on our backup server.
So, the basic was configured: On my own servers I keep the main database, and the data collector and calculations proccesses; and on the remote site I keep only static files containing the data to be displayed.
Latter, when I started to compute my own WN8, I had to use a database on the remote server to keep the player data, as it would be a problem keep more than 50k files on the file system.
The site, now, is not so cheap to run, but thanks to the great support of the community I'm receiving donations enought to cover most of the hosting costs.
- Main Database: A currently 25GB (with lots of page compression) Sql Server 2016 db that hosts clans, players, tanks statistics etc.
- Site Database: A currently 2GB Sql Server 2016 db that is more like a key store to holds by player data.
- FetchPlayers: A console app that runs all the time querying player data from the Wargaming API.
- FetchClanMembership: A console app that runs hourly to query clan data from the Wargaming API.
- CalculateClanStats: A console app thar runs hourly to calculate clan data and updates the files on the Site.
- Site: The main site of the application. There are 2 deploys, one for XBOX, and another to PS4.
- WotClansBot: a Discord bot that runs on my own server, with direct access to the Main Database that is a nice complement to the Site.
It holds everything!
I will soon(tm) provide a link to the daily backups and some explanation on it.
It's just a key store from the player ID to a compressed json that represents overall, last month and last week data for the player.
It's updated by the FetchPlayers (and the WotClansBot, sometimes) by using an administrative API on the site.
Why not? Altought this is more like a "full disclosure" iniciative more than giving away control of the project, feel free to contact me. There are a few places that I would love to have some help:
- Translations to German, Russian, Spanish.
- A more "mobile friendly" main view.
- etc
Can I copy your project, database, and open up my version of it with beer, hookers and ads?
Sure! By all means! It's MIT licensed.
There are comments in Spanish on the code!
Actually they are in Portuguese, my usual language. They will be translated, eventually.
Your code sucks! Will you improve it?
Nah! It has a purpose, a reason, and works very fine giving the constraints of cost in running and maintening the site. But of course I will improve it, and suggestions on how to inprove, refactor and so on are wellcome.
XVM — это самый популярный мод для World of Tanks с многолетней историей и множеством возможностей для тонкой и гибкой настройки игры.
На этой странице вы можете бесплатно скачать XVM и отслеживать появление новых версий мода.
Рекомендуемые версии XVM
Если в таблице выше нет мода для World of Tanks текущей версии, значит мод ещё в разработке.
Как только стабильная версия будет готова, она сразу же появится в таблице. Следите за обновлениями на этой странице.
Тестовые версии XVM
«Ночными сборками» (nightly builds) мы называем тестовые версии XVM.
Их автоматически собирает наш робот на основе новейших исходных кодов из наших репозиториев без последующей ручной проверки человеком.
Ночные сборки XVM не рекомендованы для использования неопытными пользователями , так как могут быть нестабильны или содержать ошибки. Они создаются только для целей тестирования.
Если вы хотите принять участие в тестировании ночных сборок, ознакомьтесь с порядком оформления баг-репортов, который описан в этой теме форума поддержки и сообщайте нам обо всех найденных ошибках в этом разделе.
Ваши правильно оформленные баг-репорты помогают нам быстрее обнаруживать и исправлять вероятные проблемы. Спасибо за участие!
Обратите внимание
Если вы хотите использовать статистику в XVM, вам необходимо активировать сетевые сервисы в личном кабинете на официальном сайте XVM.
Скачивая XVM из сторонних источников или в составе модпаков неизвестного происхождения вы подвергаете риску безопасность вашего ПК и личных данных.
Также, при загрузке из сторонних источников есть вероятность получения повреждённого или неправильно настроенного мода.
В кругу неопытных пользователей мод XVM широко известен под названиями «оленемер», «оленеметр», «пользомер», «пользометр», «нубометр».
Эти «народные» названия описывают всего лишь одну из множества возможностей мода, поэтому для ясности мы рекомендуем использовать официальное название мода — XVM.
Читайте также: