Cross-platform Overwatch custom-game companion for Windows and Android with hero randomization, match scoring, deterministic counterpick recommendations, local vision AI, and private offline chat.
C#
1
14 commits
updated Sep 19, 2026
A cross-platform companion for Overwatch custom games featuring role and hero randomization, a points-based match mode, deterministic counterpick recommendations, local screenshot recognition, and a private AI chat.
This is an unofficial fan project and is not affiliated with Blizzard Entertainment.
The current version is 2.7. Installers, portable packages, checksums, and release notes are available in GitHub Releases.
Version 2.7 moves the application to .NET MAUI and provides one responsive interface for Windows and Android. The restrained dark palette uses orange only for active controls and primary actions, while player and counterpick cards remain readable on narrow screens.
Navigation is divided into four focused tabs: Random, Game, Counters, and AI Chat. On phones, the title is shortened to OW Randomizer, controls reflow to match the available width, and player management cards can be collapsed.
![]() | ![]() |
| Game Players, personal hero pools, and rounds | Counters Five non-overlapping counterpick teams |
5v5, Open Queue 6v6, Stadium, and custom modes for 1–10 participants;1 Tank / 2 Damage / 2 Support role composition in 5v5;1-2-2 pool for every player;2:1 conversion rate;Round score formula:
55 + eliminations × 12 + every 10 objective seconds × 10
+ damage / 400 + healing / 400 − deaths × 5
5v5, Open 6v6, and Stadium modes;data/counterpickgg;On first launch, the user can select the interface language and one of three options:
unsloth/Qwen3.5-0.8B-GGUF, Qwen3.5-0.8B-Q4_K_M.gguf weights, approximately 740 MB including the vision projector.unsloth/Qwen3.5-2B-GGUF, Qwen3.5-2B-Q4_K_M.gguf weights, approximately 1.95 GB including the vision projector. Recommended only for high-end hardware.Both primary model files use Q4_K_M quantization. The vision projector is distributed separately by the model authors as mmproj-BF16.gguf; no Q4_K_M projector is published. Downloads are retrieved from Hugging Face, verified by SHA-256, and stored locally.
Inference runs through the bundled llama.cpp runtime. Screenshots, chat messages, and conversation history are not sent to a cloud API. The interface does not expose an endpoint or external model-name field.
Auto, GPU, and CPU acceleration modes;The installer does not require administrator privileges and creates an optional shortcut only for the current user. The portable edition is one EXE: it temporarily extracts the required files, runs the application, and removes the temporary session after the application closes.
The primary application is located in modern_app and uses .NET MAUI 10. Building requires .NET 10 with the maui-windows and maui-android workloads, Android SDK API 36, JDK 21, and Inno Setup 6 for the Windows installer.
.\modern_app\build.ps1
Build only one platform:
.\modern_app\build.ps1 -SkipAndroid
.\modern_app\build.ps1 -SkipWindows
Create the Windows installer and the single-file portable launcher after the Windows build:
& "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" .\installer.iss
& "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" .\portable.iss
Run the rules check without building the interface:
& "$env:USERPROFILE\.dotnet-maui\dotnet.exe" run `
--project .\modern_app\Checks\Checks.csproj -c Release
The check covers role composition, hero uniqueness, the Stadium pool, purchases, point transfers, round scoring, personal rerolls, the VLM parser contract, and deterministic counterpick recommendations.
modern_app/ .NET MAUI application for Windows and Android
data/counterpickgg/ rank-specific counterpick strength data
docs/screenshots/ screenshots of the current interface
installer.iss Windows Setup definition
portable.iss single-file portable launcher definition
OverwatchRandomizerSetup.exe
installer for the current version
main.py preserved classic Tkinter version
data/counterpickgg dataset.Overwatch and related names are trademarks of Blizzard Entertainment.
Кроссплатформенный помощник для кастомных игр Overwatch: рандомизация ролей и героев, игровой режим с очками, подбор контрпиков, распознавание скриншотов локальной VLM и отдельный ИИ-чат.
Неофициальный фанатский проект. Не связан с Blizzard Entertainment.
Актуальная версия — 2.7. Готовые файлы и список изменений находятся в GitHub Releases.
Версия 2.7 полностью переносит приложение на .NET MAUI и использует единый адаптивный интерфейс на Windows и Android. Тёмная палитра стала спокойнее, оранжевый цвет используется только для активных элементов и основных действий, а карточки игроков и контрпиков сохраняют читаемость на узком экране.
Основная навигация разделена на четыре вкладки: Рандом, Игра, Контры и ИИ-чат. На телефоне длинное название сокращается до OW Randomizer, элементы управления перестраиваются под ширину экрана, а карточки игроков можно сворачивать.
![]() | ![]() |
| Игра Игроки, личные наборы героев и раунды | Контры Топ-5 составов без повторения героев |
5v5, открытая очередь 6v6, Stadium и своя игра на 1–10 участников;1 танк / 2 урона / 2 поддержки для 5v5;1-2-2;2:1;Формула очков раунда:
55 + устранения × 12 + каждые 10 секунд на объекте × 10
+ урон / 400 + лечение / 400 − смерти × 5
5v5, Open 6v6 и Stadium;data/counterpickgg;При первом запуске можно выбрать язык и один из трёх вариантов:
unsloth/Qwen3.5-0.8B-GGUF, основные веса Qwen3.5-0.8B-Q4_K_M.gguf, около 740 МБ вместе с vision projector.unsloth/Qwen3.5-2B-GGUF, основные веса Qwen3.5-2B-Q4_K_M.gguf, около 1,95 ГБ вместе с vision projector. Рекомендуется только для топового железа.Основные веса обеих моделей используют квантизацию Q4_K_M. Vision projector поставляется авторами отдельно как mmproj-BF16.gguf; для него Q4_K_M-вариант не опубликован. Файлы скачиваются с Hugging Face, проверяются по SHA-256 и хранятся локально.
ИИ работает через встроенный llama.cpp. Скриншоты, сообщения и история чата не отправляются в облачный API. В интерфейсе нет endpoint или внешнего имени модели.
Авто, GPU и CPU;Установщик не требует прав администратора и создаёт необязательный ярлык только для текущего пользователя. Portable-версия состоит из одного EXE: она временно извлекает необходимые файлы, запускает приложение и удаляет временную сессию после его закрытия.
Основное приложение находится в modern_app и использует .NET MAUI 10. Нужны .NET 10 с workloads maui-windows и maui-android, Android SDK API 36, JDK 21 и Inno Setup 6 для Windows Setup.
.\modern_app\build.ps1
Сборка одной платформы:
.\modern_app\build.ps1 -SkipAndroid
.\modern_app\build.ps1 -SkipWindows
После Windows-сборки установщик и однофайловый portable launcher создаются так:
& "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" .\installer.iss
& "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" .\portable.iss
Проверки правил без сборки интерфейса:
& "$env:USERPROFILE\.dotnet-maui\dotnet.exe" run `
--project .\modern_app\Checks\Checks.csproj -c Release
Сценарий проверяет составы ролей, уникальность героев, Stadium-пул, покупки, переводы очков, формулу раунда, персональные рероллы, контракт VLM-парсера и детерминированный топ-5 контрпиков.
modern_app/ приложение .NET MAUI для Windows и Android
data/counterpickgg/ таблицы силы контрпиков по рангам
docs/screenshots/ изображения актуального интерфейса
installer.iss сценарий Windows Setup
portable.iss сценарий однофайлового portable launcher
OverwatchRandomizerSetup.exe
готовый установщик текущей версии
main.py сохранённая классическая Tkinter-версия
data/counterpickgg.Overwatch и связанные названия принадлежат Blizzard Entertainment.
Cross-platform Overwatch custom-game companion for Windows and Android with hero randomization, match scoring, deterministic counterpick recommendations, local vision AI, and private offline chat.
C#
1
14 commits
updated Sep 19, 2026
A cross-platform companion for Overwatch custom games featuring role and hero randomization, a points-based match mode, deterministic counterpick recommendations, local screenshot recognition, and a private AI chat.
This is an unofficial fan project and is not affiliated with Blizzard Entertainment.
The current version is 2.7. Installers, portable packages, checksums, and release notes are available in GitHub Releases.
Version 2.7 moves the application to .NET MAUI and provides one responsive interface for Windows and Android. The restrained dark palette uses orange only for active controls and primary actions, while player and counterpick cards remain readable on narrow screens.
Navigation is divided into four focused tabs: Random, Game, Counters, and AI Chat. On phones, the title is shortened to OW Randomizer, controls reflow to match the available width, and player management cards can be collapsed.
![]() | ![]() |
| Game Players, personal hero pools, and rounds | Counters Five non-overlapping counterpick teams |
5v5, Open Queue 6v6, Stadium, and custom modes for 1–10 participants;1 Tank / 2 Damage / 2 Support role composition in 5v5;1-2-2 pool for every player;2:1 conversion rate;Round score formula:
55 + eliminations × 12 + every 10 objective seconds × 10
+ damage / 400 + healing / 400 − deaths × 5
5v5, Open 6v6, and Stadium modes;data/counterpickgg;On first launch, the user can select the interface language and one of three options:
unsloth/Qwen3.5-0.8B-GGUF, Qwen3.5-0.8B-Q4_K_M.gguf weights, approximately 740 MB including the vision projector.unsloth/Qwen3.5-2B-GGUF, Qwen3.5-2B-Q4_K_M.gguf weights, approximately 1.95 GB including the vision projector. Recommended only for high-end hardware.Both primary model files use Q4_K_M quantization. The vision projector is distributed separately by the model authors as mmproj-BF16.gguf; no Q4_K_M projector is published. Downloads are retrieved from Hugging Face, verified by SHA-256, and stored locally.
Inference runs through the bundled llama.cpp runtime. Screenshots, chat messages, and conversation history are not sent to a cloud API. The interface does not expose an endpoint or external model-name field.
Auto, GPU, and CPU acceleration modes;The installer does not require administrator privileges and creates an optional shortcut only for the current user. The portable edition is one EXE: it temporarily extracts the required files, runs the application, and removes the temporary session after the application closes.
The primary application is located in modern_app and uses .NET MAUI 10. Building requires .NET 10 with the maui-windows and maui-android workloads, Android SDK API 36, JDK 21, and Inno Setup 6 for the Windows installer.
.\modern_app\build.ps1
Build only one platform:
.\modern_app\build.ps1 -SkipAndroid
.\modern_app\build.ps1 -SkipWindows
Create the Windows installer and the single-file portable launcher after the Windows build:
& "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" .\installer.iss
& "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" .\portable.iss
Run the rules check without building the interface:
& "$env:USERPROFILE\.dotnet-maui\dotnet.exe" run `
--project .\modern_app\Checks\Checks.csproj -c Release
The check covers role composition, hero uniqueness, the Stadium pool, purchases, point transfers, round scoring, personal rerolls, the VLM parser contract, and deterministic counterpick recommendations.
modern_app/ .NET MAUI application for Windows and Android
data/counterpickgg/ rank-specific counterpick strength data
docs/screenshots/ screenshots of the current interface
installer.iss Windows Setup definition
portable.iss single-file portable launcher definition
OverwatchRandomizerSetup.exe
installer for the current version
main.py preserved classic Tkinter version
data/counterpickgg dataset.Overwatch and related names are trademarks of Blizzard Entertainment.
Кроссплатформенный помощник для кастомных игр Overwatch: рандомизация ролей и героев, игровой режим с очками, подбор контрпиков, распознавание скриншотов локальной VLM и отдельный ИИ-чат.
Неофициальный фанатский проект. Не связан с Blizzard Entertainment.
Актуальная версия — 2.7. Готовые файлы и список изменений находятся в GitHub Releases.
Версия 2.7 полностью переносит приложение на .NET MAUI и использует единый адаптивный интерфейс на Windows и Android. Тёмная палитра стала спокойнее, оранжевый цвет используется только для активных элементов и основных действий, а карточки игроков и контрпиков сохраняют читаемость на узком экране.
Основная навигация разделена на четыре вкладки: Рандом, Игра, Контры и ИИ-чат. На телефоне длинное название сокращается до OW Randomizer, элементы управления перестраиваются под ширину экрана, а карточки игроков можно сворачивать.
![]() | ![]() |
| Игра Игроки, личные наборы героев и раунды | Контры Топ-5 составов без повторения героев |
5v5, открытая очередь 6v6, Stadium и своя игра на 1–10 участников;1 танк / 2 урона / 2 поддержки для 5v5;1-2-2;2:1;Формула очков раунда:
55 + устранения × 12 + каждые 10 секунд на объекте × 10
+ урон / 400 + лечение / 400 − смерти × 5
5v5, Open 6v6 и Stadium;data/counterpickgg;При первом запуске можно выбрать язык и один из трёх вариантов:
unsloth/Qwen3.5-0.8B-GGUF, основные веса Qwen3.5-0.8B-Q4_K_M.gguf, около 740 МБ вместе с vision projector.unsloth/Qwen3.5-2B-GGUF, основные веса Qwen3.5-2B-Q4_K_M.gguf, около 1,95 ГБ вместе с vision projector. Рекомендуется только для топового железа.Основные веса обеих моделей используют квантизацию Q4_K_M. Vision projector поставляется авторами отдельно как mmproj-BF16.gguf; для него Q4_K_M-вариант не опубликован. Файлы скачиваются с Hugging Face, проверяются по SHA-256 и хранятся локально.
ИИ работает через встроенный llama.cpp. Скриншоты, сообщения и история чата не отправляются в облачный API. В интерфейсе нет endpoint или внешнего имени модели.
Авто, GPU и CPU;Установщик не требует прав администратора и создаёт необязательный ярлык только для текущего пользователя. Portable-версия состоит из одного EXE: она временно извлекает необходимые файлы, запускает приложение и удаляет временную сессию после его закрытия.
Основное приложение находится в modern_app и использует .NET MAUI 10. Нужны .NET 10 с workloads maui-windows и maui-android, Android SDK API 36, JDK 21 и Inno Setup 6 для Windows Setup.
.\modern_app\build.ps1
Сборка одной платформы:
.\modern_app\build.ps1 -SkipAndroid
.\modern_app\build.ps1 -SkipWindows
После Windows-сборки установщик и однофайловый portable launcher создаются так:
& "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" .\installer.iss
& "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" .\portable.iss
Проверки правил без сборки интерфейса:
& "$env:USERPROFILE\.dotnet-maui\dotnet.exe" run `
--project .\modern_app\Checks\Checks.csproj -c Release
Сценарий проверяет составы ролей, уникальность героев, Stadium-пул, покупки, переводы очков, формулу раунда, персональные рероллы, контракт VLM-парсера и детерминированный топ-5 контрпиков.
modern_app/ приложение .NET MAUI для Windows и Android
data/counterpickgg/ таблицы силы контрпиков по рангам
docs/screenshots/ изображения актуального интерфейса
installer.iss сценарий Windows Setup
portable.iss сценарий однофайлового portable launcher
OverwatchRandomizerSetup.exe
готовый установщик текущей версии
main.py сохранённая классическая Tkinter-версия
data/counterpickgg.Overwatch и связанные названия принадлежат Blizzard Entertainment.