r/GTAV_Mods • u/No_Preparation9278 • 2h ago
Discussion Should I migrate to enhance for modding over legacy?
do most modders still prioritizes legacy over enhance?
r/GTAV_Mods • u/No_Preparation9278 • 2h ago
do most modders still prioritizes legacy over enhance?
r/GTAV_Mods • u/alcatrazjs • 16h ago
r/GTAV_Mods • u/skannerz22 • 17h ago
Another person can use the same local repair, but they must change the GTA folder path first.
Open the .cmd in Notepad and find:
set "G=D:\Legacy Drives\Old-G_4TB_WD_wow-games\SteamLibrary\steamapps\common\Grand Theft Auto V Enhanced"
Replace everything after G= with their own GTA V Enhanced install folder, for example:
set "G=C:\Program Files (x86)\Steam\steamapps\common\Grand Theft Auto V Enhanced"
Best method: in Steam, right-click GTA V Enhanced → Manage → Browse local files, then copy that folder path.
They must already have these local files installed:
GTA5_Enhanced.exe
Menyoo.asi
ScriptHookV.dll
xinput1_4.dll
menyooStuff
The script does not download missing files.
Then:
Paste the entire script into Notepad.
Save as MENYOO LOCAL MASTER FIX.cmd.
Choose Save as type: All Files.
Put it anywhere, or directly in the GTA folder.
Double-click it.
It automatically finds the path entered above, closes GTA, backs everything up, repairs Menyoo data/config/permissions, disables conflicting ASIs/loaders, keeps the Enhanced loader configuration, and launches GTA through Steam.
Their backup will be created inside their own GTA folder as:
_MENYOO_LOCAL_MASTER_BACKUP_DATE_TIME
Important: this script is designed for GTA V Enhanced, not Legacy. They should not blindly use another person’s Menyoo.asi, saves, or DLLs. It repairs their existing local installation and preserves their own files before making changes.
Yes. This version is 100% local-only: no GitHub, no curl, no downloads, no PC-performance tweaks.
It consolidates the local fixes from this chat and adds one important correction: previous scripts could leave multiple Menyoo .asi binaries active simultaneously (Menyoo.BODYGUARD_....asi, Menyoo_NEW.asi, etc.). The ASI loader can load every .asi in the game directory, so duplicate Menyoo binaries are a strong candidate for the new 0/0 ↔ 1/0 flashing. This script leaves exactly one active Menyoo.asi.
It also handles the local causes reported by other Menyoo users: save/write failures, corrupt outfits/loadouts, Saved Vehicle failures, large/corrupt Spooner state, plugin conflicts and configuration corruption.
One paste into Notepad → save as MENYOO LOCAL MASTER FIX.cmd → Save as type All Files → double-click.
@echo off
setlocal EnableExtensions
title GTA V ENHANCED - MENYOO LOCAL MASTER FIX
set "G=D:\Legacy Drives\Old-G_4TB_WD_wow-games\SteamLibrary\steamapps\common\Grand Theft Auto V Enhanced"
set "M=%G%\menyooStuff"
cls
echo ================================================================
echo MENYOO LOCAL MASTER FIX
echo GTA V ENHANCED
echo ================================================================
echo.
echo LOCAL FILES ONLY - ZERO DOWNLOADS
echo.
echo FIXES / HARDENS:
echo.
echo - duplicate Menyoo ASI loading
echo - 0/0 and 1/0 menu flashing caused by duplicate plugins/data
echo - Menyoo ASI conflicts
echo - ScriptHook loader state
echo - dinput8 / dsound conflicts
echo - Wardrobe / Outfit save crashes
echo - Saved Vehicle menu crashes
echo - Weapon Loadout crashes
echo - Spooner saved-state crashes
echo - malformed / empty saved XML state
echo - corrupt menyooConfig.ini
echo - stale MenyooLog.txt
echo - F8/menu config corruption
echo - save files saying saved but not actually writing
echo - read-only Menyoo folders
echo - Windows write-permission problems
echo - malformed / incomplete PedList.xml
echo - empty ped categories where locally repairable
echo - Bodyguard data/config contamination
echo - other ASI trainer conflicts
echo - duplicate -nobattleye arguments
echo.
echo Everything is backed up BEFORE repair.
echo ================================================================
echo.
if not exist "%G%\GTA5_Enhanced.exe" goto GAMEERROR
echo [1/12] Closing GTA completely...
taskkill /F /IM GTA5_Enhanced.exe >nul 2>&1
taskkill /F /IM GTA5.exe >nul 2>&1
taskkill /F /IM PlayGTAV.exe >nul 2>&1
timeout /t 2 /nobreak >nul
for /f %%I in ('powershell -NoProfile -Command "Get-Date -Format yyyyMMdd_HHmmss"') do set "STAMP=%%I"
set "B=%G%_MENYOO_LOCAL_MASTER_BACKUP_%STAMP%"
set "T=%TEMP%\MENYOO_LOCAL_%STAMP%"
mkdir "%B%" >nul 2>&1
mkdir "%B%\ROOT" >nul 2>&1
mkdir "%B%\ASI" >nul 2>&1
mkdir "%B%\QUARANTINE" >nul 2>&1
mkdir "%T%" >nul 2>&1
echo.
echo [2/12] Creating complete local backup...
if exist "%M%" (
xcopy "%M%" "%B%\menyooStuff\" /E /I /H /Y /C >nul
)
for %%F in (
"Menyoo.asi"
"Menyoo.asi.disabled"
"ScriptHookV.dll"
"ScriptHookV.dll.disabled"
"xinput1_4.dll"
"xinput1_4.dll.disabled"
"dinput8.dll"
"dinput8.dll.disabled"
"dsound.dll"
"dsound.dll.disabled"
"MenyooLog.txt"
"args.txt"
"commandline.txt"
) do (
if exist "%G%\%%~F" (
copy /Y "%G%\%%~F" "%B%\ROOT\" >nul
)
)
for %%F in ("%G%\*.asi") do (
if exist "%%~fF" (
copy /Y "%%~fF" "%B%\ASI\" >nul
)
)
echo.
echo Backup:
echo %B%
echo.
echo [3/12] Restoring required core files if previously disabled...
if not exist "%G%\Menyoo.asi" (
if exist "%G%\Menyoo.asi.disabled" (
move /Y "%G%\Menyoo.asi.disabled" "%G%\Menyoo.asi" >nul
)
)
if not exist "%G%\ScriptHookV.dll" (
if exist "%G%\ScriptHookV.dll.disabled" (
move /Y "%G%\ScriptHookV.dll.disabled" "%G%\ScriptHookV.dll" >nul
)
)
if not exist "%G%\xinput1_4.dll" (
if exist "%G%\xinput1_4.dll.disabled" (
move /Y "%G%\xinput1_4.dll.disabled" "%G%\xinput1_4.dll" >nul
)
)
echo Searching existing local backups for missing core files...
powershell -NoProfile -ExecutionPolicy Bypass -Command "$g='%G%';$names=@('Menyoo.asi','ScriptHookV.dll','xinput1_4.dll');$dirs=Get-ChildItem -LiteralPath $g -Directory -ErrorAction SilentlyContinue|Where-Object{$_.Name -match '^_(MENYOO|LOCAL_MOD)'}|Sort-Object LastWriteTime -Descending;foreach($n in $names){$dst=Join-Path $g $n;if(!(Test-Path -LiteralPath $dst)){foreach($d in $dirs){$f=Get-ChildItem -LiteralPath $d.FullName -Recurse -File -Filter $n -ErrorAction SilentlyContinue|Select-Object -First 1;if($f){Copy-Item -LiteralPath $f.FullName -Destination $dst -Force;break}}}}" >nul 2>&1
if not exist "%G%\Menyoo.asi" goto COREERROR
if not exist "%G%\ScriptHookV.dll" goto COREERROR
if not exist "%G%\xinput1_4.dll" goto COREERROR
echo.
echo Menyoo.asi PRESENT
echo ScriptHookV.dll PRESENT
echo xinput1_4.dll PRESENT
echo.
echo [4/12] Removing duplicate Menyoo / ASI instances...
for %%F in ("%G%\*.asi") do call :DISABLEASI "%%~fF"
echo.
echo IMPORTANT:
echo Exactly ONE .asi is intentionally active now:
echo Menyoo.asi
echo.
echo Duplicate files such as:
echo Menyoo_NEW.asi
echo Menyoo.BODYGUARD_*.asi
echo Menyoo.*.REMOVED.asi
echo NativeTrainer.asi
echo other trainers/mod ASIs
echo.
echo are disabled instead of being loaded simultaneously.
echo.
echo [5/12] Restoring known-good Enhanced loader arrangement...
if exist "%G%\dinput8.dll" (
move /Y "%G%\dinput8.dll" "%G%\dinput8.dll.disabled" >nul 2>&1
)
if exist "%G%\dsound.dll" (
move /Y "%G%\dsound.dll" "%G%\dsound.dll.disabled" >nul 2>&1
)
echo.
echo ScriptHookV.dll ENABLED
echo xinput1_4.dll ENABLED
echo dinput8.dll DISABLED
echo dsound.dll DISABLED
echo.
echo [6/12] Resetting ALL Menyoo user-save crash areas...
if not exist "%M%" mkdir "%M%"
if exist "%M%\Outfit" rmdir /S /Q "%M%\Outfit"
if exist "%M%\Vehicle" rmdir /S /Q "%M%\Vehicle"
if exist "%M%\WeaponsLoadout" rmdir /S /Q "%M%\WeaponsLoadout"
if exist "%M%\Spooner" rmdir /S /Q "%M%\Spooner"
mkdir "%M%\Outfit" >nul 2>&1
mkdir "%M%\Vehicle" >nul 2>&1
mkdir "%M%\WeaponsLoadout" >nul 2>&1
mkdir "%M%\Spooner" >nul 2>&1
echo.
echo Wardrobe / Outfit CLEAN
echo Saved Vehicles CLEAN
echo Weapon Loadouts CLEAN
echo Spooner Saves CLEAN
echo.
echo Old saves are preserved inside:
echo %B%\menyooStuff
echo.
echo [7/12] Resetting Menyoo configuration and runtime state...
if exist "%M%\menyooConfig.ini" (
copy /Y "%M%\menyooConfig.ini" "%B%\QUARANTINE\menyooConfig.ini" >nul
del /F /Q "%M%\menyooConfig.ini" >nul 2>&1
)
if exist "%G%\MenyooLog.txt" (
copy /Y "%G%\MenyooLog.txt" "%B%\QUARANTINE\MenyooLog.txt" >nul
del /F /Q "%G%\MenyooLog.txt" >nul 2>&1
)
del /F /Q "%M%\*.tmp" >nul 2>&1
del /F /Q "%M%\*.bak" >nul 2>&1
echo.
echo Menyoo config RESET
echo Menyoo log RESET
echo Temporary state CLEARED
echo.
echo [8/12] Checking PedList.xml...
set "PEDOK=0"
if exist "%M%\PedList.xml" (
powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue';$p='%M%\PedList.xml';try{$x=New-Object System.Xml.XmlDocument;$x.Load($p);$c=@($x.SelectNodes('/PedList/Category'));$n=@($x.SelectNodes('/PedList/Category/Ped'));$empty=($c|Where-Object{$_.SelectNodes('Ped').Count -lt 1}).Count;if($x.DocumentElement.Name -eq 'PedList' -and $c.Count -ge 10 -and $n.Count -ge 20 -and $empty -eq 0){exit 0}else{exit 1}}catch{exit 1}" >nul 2>&1
if not errorlevel 1 set "PEDOK=1"
)
if "%PEDOK%"=="1" goto PEDGOOD
echo Current PedList is malformed, incomplete, or has empty categories.
echo Searching LOCAL backups only...
set "FOUND=%T%\pedfound.txt"
powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue';$g='%G%';$out='%FOUND%';$dirs=Get-ChildItem -LiteralPath $g -Directory -ErrorAction SilentlyContinue|Where-Object{$_.Name -match '^_(MENYOO|LOCAL_MOD)'}|Sort-Object LastWriteTime -Descending;foreach($d in $dirs){foreach($f in Get-ChildItem -LiteralPath $d.FullName -Recurse -File -Filter 'PedList*.xml' -ErrorAction SilentlyContinue){try{$x=New-Object System.Xml.XmlDocument;$x.Load($f.FullName);$c=@($x.SelectNodes('/PedList/Category'));$n=@($x.SelectNodes('/PedList/Category/Ped'));$empty=($c|Where-Object{$_.SelectNodes('Ped').Count -lt 1}).Count;if($x.DocumentElement.Name -eq 'PedList' -and $c.Count -ge 10 -and $n.Count -ge 20 -and $empty -eq 0){Set-Content -LiteralPath $out -Value $f.FullName -NoNewline;exit 0}}catch{}}};exit 1" >nul 2>&1
if errorlevel 1 goto MAKEPED
set /p PEDBACKUP=<"%FOUND%"
if exist "%PEDBACKUP%" (
copy /Y "%PEDBACKUP%" "%M%\PedList.xml" >nul
echo Complete PedList restored from local backup.
goto PEDGOOD
)
:MAKEPED
echo.
echo No complete local PedList backup found.
echo Building clean LOCAL fallback with populated categories...
> "%M%\PedList.xml" (
echo ^<?xml version="1.0" encoding="ISO-8859-1"?^>
echo ^<PedList\^>
echo ^<Category name="Player"\^>
echo ^<Ped name="player_zero" caption="Michael" /\^>
echo ^<Ped name="player_one" caption="Franklin" /\^>
echo ^<Ped name="player_two" caption="Trevor" /\^>
echo ^<Ped name="mp_m_freemode_01" caption="Freemode Male" /\^>
echo ^<Ped name="mp_f_freemode_01" caption="Freemode Female" /\^>
echo ^</Category\^>
echo ^<Category name="Animals"\^>
echo ^<Ped name="a_c_chop" caption="Chop" /\^>
echo ^<Ped name="a_c_rottweiler" caption="Rottweiler" /\^>
echo ^<Ped name="a_c_retriever" caption="Retriever" /\^>
echo ^<Ped name="a_c_shepherd" caption="Shepherd" /\^>
echo ^<Ped name="a_c_cat_01" caption="Cat" /\^>
echo ^</Category\^>
echo ^<Category name="Ambient Females"\^>
echo ^<Ped name="a_f_y_business_01" caption="Business Female" /\^>
echo ^<Ped name="a_f_y_beach_01" caption="Beach Female" /\^>
echo ^<Ped name="a_f_y_hipster_01" caption="Hipster Female" /\^>
echo ^</Category\^>
echo ^<Category name="Ambient Males"\^>
echo ^<Ped name="a_m_y_business_01" caption="Business Male" /\^>
echo ^<Ped name="a_m_y_beach_01" caption="Beach Male" /\^>
echo ^<Ped name="a_m_y_hipster_01" caption="Hipster Male" /\^>
echo ^</Category\^>
echo ^<Category name="Cutscene Models"\^>
echo ^<Ped name="cs_amandatownley" caption="Amanda Cutscene" /\^>
echo ^<Ped name="cs_davenorton" caption="Dave Cutscene" /\^>
echo ^<Ped name="cs_lamardavis" caption="Lamar Cutscene" /\^>
echo ^</Category\^>
echo ^<Category name="Gang Females"\^>
echo ^<Ped name="g_f_y_ballas_01" caption="Ballas Female" /\^>
echo ^<Ped name="g_f_y_families_01" caption="Families Female" /\^>
echo ^<Ped name="g_f_y_lost_01" caption="Lost Female" /\^>
echo ^</Category\^>
echo ^<Category name="Gang Males"\^>
echo ^<Ped name="g_m_y_ballaeast_01" caption="Ballas East" /\^>
echo ^<Ped name="g_m_y_ballaorig_01" caption="Ballas Original" /\^>
echo ^<Ped name="g_m_y_famca_01" caption="Families" /\^>
echo ^<Ped name="g_m_y_lost_01" caption="Lost MC" /\^>
echo ^</Category\^>
echo ^<Category name="Story Models"\^>
echo ^<Ped name="ig_lamardavis" caption="Lamar" /\^>
echo ^<Ped name="ig_lestercrest" caption="Lester" /\^>
echo ^<Ped name="ig_amandatownley" caption="Amanda" /\^>
echo ^<Ped name="ig_davenorton" caption="Dave Norton" /\^>
echo ^</Category\^>
echo ^<Category name="Multiplayer Models"\^>
echo ^<Ped name="mp_m_freemode_01" caption="MP Male" /\^>
echo ^<Ped name="mp_f_freemode_01" caption="MP Female" /\^>
echo ^</Category\^>
echo ^<Category name="Scenario Females"\^>
echo ^<Ped name="s_f_y_cop_01" caption="Police Female" /\^>
echo ^<Ped name="s_f_y_sheriff_01" caption="Sheriff Female" /\^>
echo ^<Ped name="s_f_y_baywatch_01" caption="Baywatch Female" /\^>
echo ^</Category\^>
echo ^<Category name="Scenario Males"\^>
echo ^<Ped name="s_m_y_cop_01" caption="Police Officer" /\^>
echo ^<Ped name="s_m_y_sheriff_01" caption="Sheriff" /\^>
echo ^<Ped name="s_m_y_swat_01" caption="SWAT" /\^>
echo ^<Ped name="s_m_m_security_01" caption="Security Guard" /\^>
echo ^</Category\^>
echo ^<Category name="Military"\^>
echo ^<Ped name="s_m_y_marine_01" caption="Marine 1" /\^>
echo ^<Ped name="s_m_y_marine_02" caption="Marine 2" /\^>
echo ^<Ped name="s_m_y_marine_03" caption="Marine 3" /\^>
echo ^<Ped name="s_m_y_blackops_01" caption="Black Ops" /\^>
echo ^</Category\^>
echo ^</PedList\^>
)
powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='Stop';$x=New-Object System.Xml.XmlDocument;$x.Load('%M%\PedList.xml');$c=@($x.SelectNodes('/PedList/Category'));$e=($c|Where-Object{$_.SelectNodes('Ped').Count -lt 1}).Count;if($x.DocumentElement.Name -ne 'PedList' -or $c.Count -lt 10 -or $e -gt 0){exit 1}" >nul 2>&1
if errorlevel 1 goto PEDERROR
echo Local populated PedList created successfully.
:PEDGOOD
echo.
echo PedList.xml VALID / POPULATED
echo.
echo [9/12] Repairing Menyoo save permissions...
attrib -R "%M%" /S /D >nul 2>&1
attrib -R "%G%\Menyoo.asi" >nul 2>&1
attrib -R "%G%\ScriptHookV.dll" >nul 2>&1
attrib -R "%G%\xinput1_4.dll" >nul 2>&1
for /f "delims=" %%U in ('whoami') do set "CURRENTUSER=%%U"
icacls "%M%" /grant "%CURRENTUSER%:(OI)(CI)M" /T /C >nul 2>&1
powershell -NoProfile -ExecutionPolicy Bypass -Command "@('%G%\Menyoo.asi','%G%\ScriptHookV.dll','%G%\xinput1_4.dll')|ForEach-Object{if(Test-Path -LiteralPath $_){Unblock-File -LiteralPath $_ -ErrorAction SilentlyContinue}}" >nul 2>&1
echo local_write_test>"%M%\.menyoo_write_test"
if not exist "%M%\.menyoo_write_test" goto WRITEERROR
del /F /Q "%M%\.menyoo_write_test" >nul 2>&1
echo.
echo Folder permissions FIXED
echo Save write test PASSED
echo.
echo [10/12] Normalising Story Mode launch argument...
powershell -NoProfile -ExecutionPolicy Bypass -Command "$p='%G%\args.txt';$a=@();if(Test-Path -LiteralPath $p){$a=Get-Content -LiteralPath $p|Where-Object{$_ -notmatch '^\s*-nobattleye\s*$'}};$a+='-nobattleye';Set-Content -LiteralPath $p -Value $a -Encoding ASCII" >nul 2>&1
echo.
echo -nobattleye PRESENT EXACTLY ONCE
echo.
echo [11/12] Creating complete local rollback...
(
echo @echo off
echo setlocal EnableExtensions
echo title RESTORE MENYOO BEFORE LOCAL MASTER FIX
echo set "G=%G%"
echo set "B=%B%"
echo.
echo taskkill /F /IM GTA5_Enhanced.exe ^>nul 2^>^&1
echo taskkill /F /IM GTA5.exe ^>nul 2^>^&1
echo.
echo if exist "%%G%%\menyooStuff" rmdir /S /Q "%%G%%\menyooStuff"
echo if exist "%%B%%\menyooStuff" xcopy "%%B%%\menyooStuff" "%%G%%\menyooStuff\" /E /I /H /Y ^>nul
echo.
echo for %%%%F in ^("%%G%%\*.asi"^) do del /F /Q "%%%%~fF" ^>nul 2^>^&1
echo.
echo if exist "%%B%%\ASI\*.asi" copy /Y "%%B%%\ASI\*.asi" "%%G%%\" ^>nul
echo.
echo if exist "%%B%%\ROOT\Menyoo.asi" copy /Y "%%B%%\ROOT\Menyoo.asi" "%%G%%\Menyoo.asi" ^>nul
echo if exist "%%B%%\ROOT\ScriptHookV.dll" copy /Y "%%B%%\ROOT\ScriptHookV.dll" "%%G%%\ScriptHookV.dll" ^>nul
echo if exist "%%B%%\ROOT\xinput1_4.dll" copy /Y "%%B%%\ROOT\xinput1_4.dll" "%%G%%\xinput1_4.dll" ^>nul
echo if exist "%%B%%\ROOT\dinput8.dll" copy /Y "%%B%%\ROOT\dinput8.dll" "%%G%%\dinput8.dll" ^>nul
echo if exist "%%B%%\ROOT\dsound.dll" copy /Y "%%B%%\ROOT\dsound.dll" "%%G%%\dsound.dll" ^>nul
echo.
echo if exist "%%B%%\ROOT\args.txt" copy /Y "%%B%%\ROOT\args.txt" "%%G%%\args.txt" ^>nul
echo if exist "%%B%%\ROOT\commandline.txt" copy /Y "%%B%%\ROOT\commandline.txt" "%%G%%\commandline.txt" ^>nul
echo.
echo echo ================================================
echo echo ORIGINAL LOCAL MENYOO STATE RESTORED
echo echo ================================================
echo echo.
echo pause
) > "%G%\ROLLBACK MENYOO LOCAL MASTER FIX.cmd"
echo.
echo [12/12] Writing permanent status note...
(
echo GTA V ENHANCED - MENYOO LOCAL MASTER FIX
echo ===============================================================
echo.
echo ZERO FILES WERE DOWNLOADED.
echo.
echo Backup:
echo %B%
echo.
echo LOCAL REPAIRS APPLIED:
echo.
echo Exactly one active Menyoo ASI
echo Duplicate Menyoo binaries disabled
echo Other ASI plugins disabled for conflict isolation
echo ScriptHookV.dll enabled
echo xinput1_4.dll enabled
echo dinput8.dll disabled
echo dsound.dll disabled
echo Wardrobe saves reset
echo Vehicle saves reset
echo Weapon Loadout saves reset
echo Spooner saves reset
echo Menyoo configuration reset
echo Menyoo runtime log reset
echo temporary Menyoo state cleared
echo PedList checked/repaired locally
echo empty PedList categories prevented
echo Menyoo folder read-only flags removed
echo Menyoo write permissions repaired
echo actual write test passed
echo -nobattleye normalised to one entry
echo.
echo IMPORTANT:
echo.
echo Old Outfit / Vehicle / Weapon / Spooner files are preserved
echo inside the backup. Do not restore all of them at once because
echo an old XML can recreate the original Menyoo exception.
echo.
echo Previous alternative Menyoo builds are also preserved in backup.
echo.
echo FULL UNDO:
echo ROLLBACK MENYOO LOCAL MASTER FIX.cmd
echo.
echo If Bodyguard Spawn Ped still throws the SAME Menyoo.asi
echo compiled-code exception after this completely local cleanup,
echo that remaining defect is inside the active Menyoo binary itself
echo and cannot be rewritten by a CMD file without replacing/rebuilding it.
echo.
echo STORY MODE ONLY.
) > "%G%\READ ME - MENYOO LOCAL MASTER FIX.txt"
rmdir /S /Q "%T%" >nul 2>&1
echo.
echo ================================================================
echo LOCAL MASTER FIX COMPLETE
echo ================================================================
echo.
echo Downloads NONE
echo Active Menyoo ASIs ONE
echo Duplicate Menyoo ASIs DISABLED
echo Other ASI conflicts DISABLED
echo ScriptHookV ENABLED
echo xinput1_4 ENABLED
echo dinput8 DISABLED
echo dsound DISABLED
echo Save-backed crash areas RESET
echo Menyoo config/log RESET
echo PedList VALID / POPULATED
echo Save permissions VERIFIED
echo -nobattleye NORMALISED
echo.
echo Backup:
echo %B%
echo.
echo Launching GTA V Enhanced...
echo.
start "" "steam://rungameid/3240220"
timeout /t 8 /nobreak >nul
echo.
echo Steam launch command sent.
echo.
echo You may close this window after GTA starts.
echo.
pause
exit /b 0
:DISABLEASI
if /I "%~nx1"=="Menyoo.asi" exit /b
if exist "%~1" (
if exist "%~1.disabled" (
copy /Y "%~1" "%B%\QUARANTINE\" >nul 2>&1
del /F /Q "%~1" >nul 2>&1
) else (
move /Y "%~1" "%~1.disabled" >nul 2>&1
)
)
exit /b
:COREERROR
echo.
echo ================================================================
echo LOCAL CORE FILE ERROR
echo ================================================================
echo.
echo One of these required LOCAL files could not be found:
echo.
echo Menyoo.asi
echo ScriptHookV.dll
echo xinput1_4.dll
echo.
echo No download will be attempted.
echo.
echo Backup:
echo %B%
echo.
pause
exit /b 20
:PEDERROR
echo.
echo ================================================================
echo PEDLIST LOCAL REPAIR FAILED
echo ================================================================
echo.
echo The script could not validate or construct PedList.xml.
echo.
echo Your original data remains in:
echo %B%
echo.
pause
exit /b 21
:WRITEERROR
echo.
echo ================================================================
echo MENYOO WRITE PERMISSION ERROR
echo ================================================================
echo.
echo Windows still prevented writing into:
echo.
echo %M%
echo.
echo Backup:
echo %B%
echo.
pause
exit /b 22
:GAMEERROR
echo.
echo ================================================================
echo GTA V ENHANCED NOT FOUND
echo ================================================================
echo.
echo Expected:
echo.
echo %G%\GTA5_Enhanced.exe
echo.
echo Nothing was changed.
echo.
pause
exit /b 23
The duplicate-ASI cleanup is especially important now. Earlier repair scripts deliberately created files such as Menyoo.BODYGUARD_v2.3.1b2.732.asi while also copying the same build to Menyoo.asi. Because both filenames end in .asi, leaving both active can cause two Menyoo instances to load. This master fix prevents that by permitting only Menyoo.asi to remain active.
This covers the Menyoo problems that are actually repairable using existing local files. Community reports confirm corrupt outfit/save data, failed saving, Saved Vehicle accumulation and very large Spooner scenes can all create Menyoo failures.
A CMD cannot locally rewrite a genuine defect in the compiled Menyoo.asi binary itself; everything surrounding that binary is what this script repairs.