@echo off setlocal :: Set paths set "UE_PATH=C:\Program Files\UE_5.5" set "PROJECT_PATH=%~dp0" set "UAT_PATH=%UE_PATH%\Engine\Build\BatchFiles\RunUAT.bat" :: Check if MuJoCo DLL exists in bin directory if not exist "%MUJOCO_BIN_PATH%\mujoco.dll" ( echo Error: MuJoCo DLL not found at %MUJOCO_BIN_PATH%\mujoco.dll echo Please ensure the MuJoCo DLL is properly built and placed in the correct location. pause exit /b 1 ) :: Copy MuJoCo DLL to the plugin binaries directory if it doesn't exist there if not exist "%MUJOCO_DLL_PATH%\mujoco.dll" ( echo Copying MuJoCo DLL to plugin binaries directory... copy "%MUJOCO_BIN_PATH%\mujoco.dll" "%MUJOCO_DLL_PATH%\" if errorlevel 1 ( echo Failed to copy MuJoCo DLL pause exit /b 1 ) ) :: Add UE and MuJoCo paths to PATH environment variable set "PATH=%UE_PATH%\Engine\Binaries\Win64;%MUJOCO_DLL_PATH%;%MUJOCO_BIN_PATH%;%PATH%" :: Set the DLL search path for the current process set "PATH=%PATH%;%MUJOCO_DLL_PATH%;%MUJOCO_BIN_PATH%" :: Run the Unreal Editor :: echo Starting Unreal Editor... :: start "" "%UE_PATH%\Engine\Binaries\Win64\UnrealEditor.exe" "%PROJECT_PATH%LuckyWorldV2.uproject" endlocal :: Build and package command "%UAT_PATH%" ^ -ScriptsForProject="%PROJECT_PATH%LuckyWorldV2.uproject" ^ BuildCookRun ^ -nop4 ^ -utf8output ^ -nocompileeditor ^ -skipbuildeditor ^ -cook ^ -project="%PROJECT_PATH%LuckyWorldV2.uproject" ^ -target=LuckyWorldV2 ^ -unrealexe="%UE_PATH%\Engine\Binaries\Win64\UnrealEditor-Cmd.exe" ^ -platform=Win64 ^ -installed ^ -stage ^ -archive ^ -package ^ -build ^ -pak ^ -iostore ^ -compressed ^ -prereqs ^ -archivedirectory="%PROJECT_PATH%Build" ^ -CrashReporter ^ -clientconfig=Shipping if %ERRORLEVEL% NEQ 0 ( echo Build failed! exit /b 1 ) else ( echo Build successful! exit /b 0 )