Статистика из реплеев, которую игра не показывает
WarStat декодирует бинарные .replay на твоём ПК и строит личный профиль: урон, танк, K/D/A, счёт, рейтинг. На сервер уходит только JSON-снимок боя (~400 байт) — не сами файлы реплеев.
Как это работает
Играешь
Heat пишет .replay в папку coldwar/replays
Агент декодирует
NetHit, stat snapshot, K/D/A bundle — локально в фоне
Синхронизация
HTTPS + API key, dedup по SHA256 хешу файла
Профиль на сайте
Рейтинг, история боёв, поиск — реплеи можно удалить
Почему WarStat
Официальный клиент хранит реплеи, но не даёт удобную агрегированную статистику и сравнение с другими игроками. WarStat извлекает метрики из бинарного потока Broengine: личный урон (NetHitMessage), stat snapshot entity игрока (041801), итог боя (BattleResultReplayEvent).
Формат .replay закрыт и меняется между режимами (conquest, control, domination, killconfirm). Дешифратор развивается итеративно: анализ байт-потока, корреляция stat_id по режимам, ML-assisted сверка со скриншотами после боя.
Полностью бесплатно. Не аффилирован с издателем. Не чит, не мод — только чтение уже записанных реплеев.
Локальный декодер
WarStat Agent в системном трее. Watchdog на папку реплеев, очередь с низким приоритетом CPU, ~1 с на бой. Окно закрывается в трей — процесс живёт.
Облачный профиль
PostgreSQL на VPS, публичный рейтинг, поиск по нику. После upload статистика сохранена — папку .replay можно безопасно очистить.
Приватность по дизайну
Реплей (~15 MB) не покидает ПК. Upload — только структурированные поля боя. API key привязывает данные к аккаунту.