Загрузка данных


@echo off

:: 1. Проверка прав администратора
net session >nul 2>&1
if %errorLevel% neq 0 (
    echo Запрос прав администратора...
    powershell -NoProfile -ExecutionPolicy Bypass -Command "Start-Process -FilePath '%~f0' -Verb RunAs"
    exit /b
)

:: 2. Переход в папку скрипта и настройка кодировки
cd /d "%~dp0"
chcp 65001 > nul
setlocal enabledelayedexpansion

:: Переменные стиля и цвета
for /f "delims=" %%a in ('powershell -NoProfile -Command "[char]27"') do set "ESC=%%a"
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"

set "WARP_CLI=%ProgramFiles%\Cloudflare\Cloudflare WARP\warp-cli.exe"

title Комплексный запуск Valorant и авто-отключение WARP
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%    Чистый BAT-скрипт + обратный отсчет и ручной выход%RESET%
echo.
echo %DIM%=======================================================================%RESET%
echo.

:: =======================================================================
:: [1/6] Завершение зависших процессов
:: =======================================================================
echo %BOLD%%BLUE%[1/6]%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

taskkill /f /im RiotClientServices.exe >nul 2>&1
taskkill /f /im RiotClientUx.exe >nul 2>&1
taskkill /f /im RiotClientUxRender.exe >nul 2>&1
taskkill /f /im VALORANT-Win64-Shipping.exe >nul 2>&1
taskkill /f /im VALORANT.exe >nul 2>&1
taskkill /f /im vgc.exe >nul 2>&1
taskkill /f /im vgtray.exe >nul 2>&1
taskkill /f /im winws.exe >nul 2>&1
taskkill /f /im goodbyedpi.exe >nul 2>&1
taskkill /f /im byedpi.exe >nul 2>&1
taskkill /f /im spoofdpi.exe >nul 2>&1

echo   %GREEN%[OK]%RESET% Фоновые процессы очищены
echo   %CYAN%[████░░░░░░░░░░░░░░░░]%RESET% %WHITE%15%%%%RESET%
echo.

:: =======================================================================
:: [2/6] БЕЗОПАСНАЯ очистка кэша
:: =======================================================================
echo %BOLD%%BLUE%[2/6]%RESET% %WHITE%Безопасная очистка логов и веб-кэша...%RESET%

if exist "%LOCALAPPDATA%\Riot Games\Riot Client\Logs" rmdir /s /q "%LOCALAPPDATA%\Riot Games\Riot Client\Logs" >nul 2>&1
if exist "%LOCALAPPDATA%\Riot Games\Riot Client\Crashes" rmdir /s /q "%LOCALAPPDATA%\Riot Games\Riot Client\Crashes" >nul 2>&1
if exist "%PROGRAMDATA%\Riot Games\Riot Client\Logs" rmdir /s /q "%PROGRAMDATA%\Riot Games\Riot Client\Logs" >nul 2>&1
if exist "%LOCALAPPDATA%\VALORANT\Saved\webcache" rmdir /s /q "%LOCALAPPDATA%\VALORANT\Saved\webcache" >nul 2>&1
if exist "%LOCALAPPDATA%\VALORANT\Saved\Logs" rmdir /s /q "%LOCALAPPDATA%\VALORANT\Saved\Logs" >nul 2>&1
if exist "%TEMP%\Riot Games" rmdir /s /q "%TEMP%\Riot Games" >nul 2>&1

echo   %GREEN%[OK]%RESET% Временные логи и веб-кэш удалены
echo   %CYAN%[████████░░░░░░░░░░░░]%RESET% %WHITE%35%%%%RESET%
echo.

:: =======================================================================
:: [3/6] Сброс сети и DNS
:: ==================================


=====================================
echo %BOLD%%BLUE%[3/6]%RESET% %WHITE%Сброс сетевого стека и DNS...%RESET%

ipconfig /flushdns >nul 2>&1
netsh winsock reset catalog >nul 2>&1
netsh int ip reset >nul 2>&1

echo   %GREEN%[OK]%RESET% Сетевой стек обновлен
echo   %CYAN%[████████████░░░░░░░░]%RESET% %WHITE%55%%%%RESET%
echo.

:: =======================================================================
:: [4/6] Перезапуск Vanguard
:: =======================================================================
echo %BOLD%%BLUE%[4/6]%RESET% %WHITE%Перезапуск Vanguard...%RESET%

sc query vgc >nul 2>&1
if %errorlevel% equ 0 (
    net stop vgc >nul 2>&1
    timeout /t 1 /nobreak >nul
    net start vgc >nul 2>&1
)

echo   %GREEN%[OK]%RESET% Служба Vanguard перезапущена
echo   %CYAN%[████████████████░░░░]%RESET% %WHITE%70%%%%RESET%
echo.

:: =======================================================================
:: [5/6] Включение Cloudflare WARP
:: =======================================================================
echo %BOLD%%BLUE%[5/6]%RESET% %WHITE%Подключение Cloudflare WARP...%RESET%

if exist "%WARP_CLI%" (
    "%WARP_CLI%" connect >nul 2>&1
    timeout /t 2 /nobreak >nul
    echo   %GREEN%[OK]%RESET% WARP подключен
) else (
    echo   %YELLOW%[!]%RESET% warp-cli.exe не найден
)

echo   %CYAN%[██████████████████░░]%RESET% %WHITE%85%%%%RESET%
echo.

:: =======================================================================
:: [6/6] Запуск Riot Client и ОБРАТНЫЙ ОТСЧЕТ до отключения WARP
:: =======================================================================
echo %BOLD%%BLUE%[6/6]%RESET% %WHITE%Поиск и запуск Riot Client...%RESET%

set "RIOT_EXE="
set "RIOT_DIR="

if exist "C:\Riot Games\Riot Client\RiotClientServices.exe" (
    set "RIOT_EXE=C:\Riot Games\Riot Client\RiotClientServices.exe"
    set "RIOT_DIR=C:\Riot Games\Riot Client"
)
if not defined RIOT_EXE if exist "D:\Riot Games\Riot Client\RiotClientServices.exe" (
    set "RIOT_EXE=D:\Riot Games\Riot Client\RiotClientServices.exe"
    set "RIOT_DIR=D:\Riot Games\Riot Client"
)
if not defined RIOT_EXE if exist "E:\Riot Games\Riot Client\RiotClientServices.exe" (
    set "RIOT_EXE=E:\Riot Games\Riot Client\RiotClientServices.exe"
    set "RIOT_DIR=E:\Riot Games\Riot Client"
)

if defined RIOT_EXE (
    echo   %GREEN%[OK]%RESET% Riot Client найден. Запускаем...
    start "" /D "!RIOT_DIR!" "!RIOT_EXE!" --launch-product=valorant --launch-patchline=live
    echo   %CYAN%[████████████████████]%RESET% %WHITE%100%%%%RESET%
    echo.
    echo %GREEN%=======================================================================%RESET%
    echo %WHITE%   ОЖИДАНИЕ АВТОРИЗАЦИИ И ОТКЛЮЧЕНИЕ WARP...%RESET%
    echo %GREEN%=======================================================================%RESET%
    echo.
    
    echo   %WHITE%Отключение WARP произойдет через:%RESET%
    
    :: Цикл обратного отсчета от 8 до 1 в реальном времени
    for /L %%i in (8,-1,1) do (
        <nul set /p ".=   %YELLOW%[%%i сек]%RESET% "
        timeout /t 1 /nobreak >nul
        echo.
    )

    if exist "%WARP_CLI%" (
        echo.
        echo   %YELLOW%[!]%RESET% Отключение Cloudflare WARP...
        "%WARP_CLI%" disconnect >nul 2>&1
        echo   %GREEN%[OK]%RESET% WARP успешно отключен!
    )
) else (
    echo   %RED%[X]%RESET% Ошибка: Riot Client не найден.
    if exist "%WARP_CLI%" "%WARP_CLI%" disconnect >nul 2>&1
)

echo.
echo %DIM%=======================================================================%RESET%
echo %WHITE% Все этапы завершены!%RESET%
echo %DIM%=======================================================================%RESET%
echo.
pause