69 lines
2.0 KiB
Batchfile
69 lines
2.0 KiB
Batchfile
|
@echo off
|
||
|
|
||
|
REM Notice: This file is overwritten for each patch for safety reasons.
|
||
|
REM Hence, any manual changes will be overwritten by the next patch.
|
||
|
|
||
|
REM ============ AVOID CHANGES HERE ============
|
||
|
|
||
|
SET perr1=1
|
||
|
SET perr2=1
|
||
|
SET perr=0
|
||
|
|
||
|
REM Verify that the important hosts are blocked
|
||
|
setlocal EnableDelayedExpansion
|
||
|
FOR /f "delims=" %%i IN ('ping -n 1 -w 1 log-upload-os.hoyoverse.com') DO (
|
||
|
echo %%i | find "[0.0.0.0]" >nul
|
||
|
IF !ERRORLEVEL! EQU 0 SET "perr1=0"
|
||
|
echo %%i | find "could not find host" >nul
|
||
|
IF !ERRORLEVEL! EQU 0 SET "perr1=0"
|
||
|
)
|
||
|
FOR /f "delims=" %%i IN ('ping -n 1 -w 1 overseauspider.yuanshen.com') DO (
|
||
|
echo %%i | find "[0.0.0.0]" >nul
|
||
|
IF !ERRORLEVEL! EQU 0 SET "perr2=0"
|
||
|
echo %%i | find "could not find host" >nul
|
||
|
IF !ERRORLEVEL! EQU 0 SET "perr2=0"
|
||
|
)
|
||
|
|
||
|
REM There's no OR operator for "IF"
|
||
|
IF %perr1% EQU 1 SET perr=1
|
||
|
IF %perr2% EQU 1 SET perr=1
|
||
|
|
||
|
IF %perr% NEQ 0 (
|
||
|
REM Show the message to the user
|
||
|
echo ERROR: Crucial domains are not blocked. Please re-run the patch script. >_error.txt
|
||
|
notepad _error.txt
|
||
|
del _error.txt
|
||
|
exit
|
||
|
)
|
||
|
|
||
|
REM Emulate the games behaviour
|
||
|
copy mhyprot2.sys "%TEMP%\"
|
||
|
regedit mhyprot2_running.reg
|
||
|
|
||
|
REM Disable crash reporting
|
||
|
IF EXIST GenshinImpact_Data\upload_crash.exe (
|
||
|
move "GenshinImpact_Data\upload_crash.exe" "GenshinImpact_Data\upload_crash.exe.bak"
|
||
|
)
|
||
|
IF EXIST GenshinImpact_Data\Plugins\crashreport.exe (
|
||
|
move "GenshinImpact_Data\Plugins\crashreport.exe" "GenshinImpact_Data\Plugins\crashreport.exe.bak"
|
||
|
)
|
||
|
|
||
|
REM cd into fpsunlock directory, so it doesn't execute in same working directory as Genshin, otherwise it will complain.
|
||
|
|
||
|
set "your_dir=..\fpsunlock"
|
||
|
pushd %cd%
|
||
|
cd %your_dir%
|
||
|
start unlockfps.exe %*
|
||
|
|
||
|
REM Only start first time, so unlockfps can detect game location. Subsequent launches can be done from unlockfps's GUI or it's autostart.
|
||
|
IF NOT EXIST fps_config.json (
|
||
|
popd
|
||
|
start GenshinImpact.exe %*
|
||
|
)
|
||
|
|
||
|
REM This is a check for the old file generated by an older version of unlockfps
|
||
|
|
||
|
REM IF NOT EXIST fps_config.ini (
|
||
|
REM start GenshinImpact.exe %*
|
||
|
REM )
|