Загрузка данных
@echo off
:: 1. Проверка прав администратора через короткий путь %~s0 (защита от падений из-за кириллицы/пробелов)
net session >nul 2>&1
if %errorLevel% neq 0 (
echo Запрос прав администратора...
powershell -NoProfile -ExecutionPolicy Bypass -Command "Start-Process -FilePath '%~s0' -Verb RunAs"
exit /b
)
:: 2. Переход в папку скрипта и инициализация кодировки
cd /d "%~dp0"
:: 3. Надежное получение ANSI ESC символа через PowerShell
for /f "delims=" %%a in ('powershell -NoProfile -Command "[char]27"') do set "ESC=%%a"
:: 4. Перевод в UTF-8 и включение расширенной подстановки
chcp 65001 > nul
setlocal enabledelayedexpansion
:: Переменные вывода
set "PCT=%%"
set "RESET=%ESC%[0m"
set "RED=%ESC%[91m"
set "GREEN=%ESC%[92m"
set "YELLOW=%ESC%[93m"
set "BLUE=%ESC%[94m"
set "MAGENTA=%ESC%[95m"
set "CYAN=%ESC%[96m"
set "WHITE=%ESC%[97m"
set "BOLD=%ESC%[1m"
set "DIM=%ESC%[2m"
title Комплексная АНИГИЛЯЦИЯ гавнюктера и фикс VAL 43
cls
:: =======================================================================
:: ШАПКА
:: =======================================================================
echo.
echo %MAGENTA% ███████╗███████╗██████╗ ██████╗ ██████╗ ██████╗ ██████╗ ██████╗ ██████╗ %RESET%
echo %MAGENTA% ██╔════╝██╔════╝██╔══██╗██╔═══██╗██╔══██╗ ██╔════╝██╔═══██╗██╔══██╗██╔══██╗%RESET%
echo %MAGENTA% █████╗ █████╗ ██║ ██║██║ ██║██████╔╝ ██║ ██║ ██║██████╔╝██████╔╝%RESET%
echo %MAGENTA% ██╔══╝ ██╔══╝ ██║ ██║██║ ██║██╔══██╗ ██║ ██║ ██║██╔══██╗██╔═══╝ %RESET%
echo %MAGENTA% ██║ ███████╗██████╔╝╚██████╔╝██║ ██║ ╚██████╗╚██████╔╝██║ ██║██║ %RESET%
echo %MAGENTA% ╚═╝ ╚══════╝╚═════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ %RESET%
echo.
echo %BOLD%%WHITE% ЕБАЛ В РОТ РИОТОВ%RESET%
echo %DIM%%WHITE% Комплексная анигиляция + фикс VAL 43%RESET%
echo.
echo %DIM%=======================================================================%RESET%
echo.
:: =======================================================================
:: [1/5] Завершение процессов
:: =======================================================================
echo %BOLD%%BLUE%[1/5]%RESET% %WHITE%Завершение подвисших процессов...%RESET%
net stop vgc >nul 2>&1
net stop windivert >nul 2>&1
net stop zapret >nul 2>&1
net stop goodbyedpi >nul 2>&1
for %%P in (
RiotClientServices.exe
RiotClientUx.exe
RiotClientUxRender.exe
VALORANT-Win64-Shipping.exe
VALORANT.exe
vgc.exe
vgtray.exe
winws.exe
goodbyedpi.exe
byedpi.exe
spoofdpi.exe
) do taskkill /f /im %%P >nul 2>&1
echo %GREEN%[OK]%RESET% Процессы завершены
echo %CYAN%[████░░░░░░░░░░░░░░░░]%RESET% %WHITE%20!PCT!%RESET%
echo.
:: =======================================================================
:: [2/5] Очистка файлового кэша
:: =======================================================================
echo %BOLD%%BLUE%[2/5]%RESET% %WHITE%Глубокая очистка файлов кэша...%RESET%
set "LOCAL_DATA=%localappdata%"
set "PROGRAM_DATA=%ProgramData%"
set "RIOT_LOCAL=%LOCAL_DATA%\Riot Games"
set "RIOT_PROGRAM=%PROGRAM_DATA%\Riot Games"
del /f /q "%RIOT_LOCAL%\Riot Client\Data\RiotClientPrivateSettings.yaml" >nul 2>&1
if exist "%RIOT_LOCAL%\Riot Client\Logs" rmdir /s /q "%RIOT_LOCAL%\Riot Client\Logs" >nul 2>&1
if exist "%RIOT_LOCAL%\Riot Client\Crashes" rmdir /s /q "%RIOT_LOCAL%\Riot Client\Crashes" >nul 2>&1
if exist "%RIOT_PROGRAM%\Riot Client\Logs" rmdir /s /q "%RIOT_PROGRAM%\Riot Client\Logs" >nul 2>&1
if exist "%RIOT_PROGRAM%\Riot Client\Crashes" rmdir /s /q "%RIOT_PROGRAM%\Riot Client\Crashes" >nul 2>&1
if exist "%LOCAL_DATA%\VALORANT\Saved\webcache" rmdir /s /q "%LOCAL_DATA%\VALORANT\Saved\webcache" >nul 2>&1
if exist "%LOCAL_DATA%\VALORANT\Saved\Logs" rmdir /s /q "%LOCAL_DATA%\VALORANT\Saved\Logs" >nul 2>&1
if exist "%LOCAL_DATA%\VALORANT\Saved\Crashes" rmdir /s /q "%LOCAL_DATA%\VALORANT\Saved\Crashes" >nul 2>&1
if exist "%LOCAL_DATA%\VALORANT\Saved\Config\Windows" (
del /f /q "%LOCAL_DATA%\VALORANT\Saved\Config\Windows\*.ini" >nul 2>&1
)
if exist "%ProgramFiles%\Riot Vanguard\Logs" rmdir /s /q "%ProgramFiles%\Riot Vanguard\Logs" >nul 2>&1
if exist "%TEMP%\Riot Games" rmdir /s /q "%TEMP%\Riot Games" >nul 2>&1
if exist "%RIOT_PROGRAM%\Metadata\valorant.live" rmdir /s /q "%RIOT_PROGRAM%\Metadata\valorant.live" >nul 2>&1
echo %GREEN%[OK]%RESET% Кэш и логи очищены
echo %CYAN%[█████████░░░░░░░░░░░]%RESET% %WHITE%45!PCT!%RESET%
echo.
:: =======================================================================
:: [3/5] Сброс сети и DNS
:: =======================================================================
echo %BOLD%%BLUE%[3/5]%RESET% %WHITE%Сброс сетевого стека и DNS...%RESET%
sc config w32time start= auto >nul 2>&1
net start w32time >nul 2>&1
w32tm /resync /force >nul 2>&1
netsh winhttp reset proxy >nul 2>&1
netsh winsock reset catalog >nul 2>&1
netsh int ip reset >nul 2>&1
netsh int ipv6 reset >nul 2>&1
ipconfig /release >nul 2>&1
ipconfig /renew >nul 2>&1
ipconfig /flushdns >nul 2>&1
ipconfig /registerdns >nul 2>&1
nbtstat -R >nul 2>&1
nbtstat -RR >nul 2>&1
arp -d * >nul 2>&1
echo %GREEN%[OK]%RESET% Сеть и DNS сброшены
echo %CYAN%[██████████████░░░░░░]%RESET% %WHITE%70!PCT!%RESET%
echo.
:: =======================================================================
:: [4/5] Проверка hosts, конфликтов zapret и перезапуск Vanguard
:: =======================================================================
echo %BOLD%%BLUE%[4/5]%RESET% %WHITE%Проверка hosts и конфликтов zapret...%RESET%
set "HOSTS_FILE=%SystemRoot%\System32\drivers\etc\hosts"
if exist "%HOSTS_FILE%" (
findstr /i "riotgames valorant" "%HOSTS_FILE%" >nul 2>&1
if !errorlevel! equ 0 (
echo %YELLOW%[!]%RESET% В hosts найдены записи Riot/Valorant, очищаем...
attrib -r -h -s "%HOSTS_FILE%" >nul 2>&1
powershell -NoProfile -ExecutionPolicy Bypass -Command ^
"$f='%HOSTS_FILE%';" ^
"$c=Get-Content -LiteralPath $f;" ^
"$c | Where-Object { $_ -notmatch 'riotgames|valorant' } | Set-Content -LiteralPath $f -Encoding ASCII"
attrib -r "%HOSTS_FILE%" >nul 2>&1
)
)
sc query windivert >nul 2>&1
if !errorlevel! equ 0 (
net stop windivert >nul 2>&1
)
tasklist /fi "imagename eq winws.exe" 2>nul | find /i "winws.exe" >nul
if !errorlevel! equ 0 (
taskkill /f /im winws.exe >nul 2>&1
)
sc query vgc >nul 2>&1
if !errorlevel! equ 0 (
sc config vgc start= demand >nul 2>&1
net stop vgc >nul 2>&1
timeout /t 1 /nobreak >nul
net start vgc >nul 2>&1
)
sc query vgk >nul 2>&1
echo %GREEN%[OK]%RESET% Проверка hosts и софта завершена
echo %CYAN%[█████████████████░░░]%RESET% %WHITE%85!PCT!%RESET%
echo.
:: =======================================================================
:: [5/5] Финализация
:: =======================================================================
echo %BOLD%%BLUE%[5/5]%RESET% %WHITE%Финализация...%RESET%
echo %CYAN%[████████████████████]%RESET% %WHITE%100!PCT!%RESET%
echo.
echo %GREEN%=======================================================================%RESET%
echo %GREEN% АНИГИЛЯЦИЯ ЗАВЕРШЕНА!%RESET%
echo %GREEN%=======================================================================%RESET%
echo.
:: =======================================================================
:: АВТОЗАПУСК RIOT CLIENT
:: =======================================================================
set "RIOT_EXE="
set "RIOT_DIR="
for %%D in (
"C:\Riot Games\Riot Client"
"D:\Riot Games\Riot Client"
"E:\Riot Games\Riot Client"
"F:\Riot Games\Riot Client"
"G:\Riot Games\Riot Client"
"%ProgramFiles%\Riot Games\Riot Client"
"%ProgramFiles(x86)%\Riot Games\Riot Client"
) do (
if not defined RIOT_EXE if exist "%%~D\RiotClientServices.exe" (
set "RIOT_EXE=%%~D\RiotClientServices.exe"
set "RIOT_DIR=%%~D"
)
)
if not defined RIOT_EXE (
for /f "tokens=2,*" %%A in ('
reg query "HKLM\SOFTW
ARE\WOW6432Node\Riot Games, Inc\Riot Client" /v Path 2^>nul
^| findstr /i "Path"
') do (
set "RIOT_DIR=%%B"
if exist "!RIOT_DIR!\RiotClientServices.exe" set "RIOT_EXE=!RIOT_DIR!\RiotClientServices.exe"
)
)
if defined RIOT_EXE (
echo %CYAN%[>]%RESET% Запускаем Riot Client...
start "" /D "!RIOT_DIR!" "!RIOT_EXE!" --launch-product=valorant --launch-patchline=live
echo %GREEN%[OK]%RESET% Riot Client запущен
) else (
echo %RED%[X]%RESET% Riot Client не найден
)
echo.
echo %DIM%=======================================================================%RESET%
echo %WHITE% Готово. Нажми любую клавишу для выхода.%RESET%
echo %DIM%=======================================================================%RESET%
pause >nul