I’ve been attempting to install a mod for Elden Ring on Mac, and it uses a batch file to install and launch. I can’t seem to get it to run with Wine, receiving these errors:
0074:err:ntoskrnl:ZwLoadDriver failed to create driver L"RegistryMachineSystemCurrentControlSetServiceswineusb": c0000142
003c:fixme:service:scmdatabase_autostart_services Auto-start service L"wineusb" failed to start: 1114
009c:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
009c:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
009c:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
009c:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
00a8:fixme:keyboard:NtUserActivateKeyboardLayout Changing user locale is not supported
00bc:fixme:keyboard:NtUserActivateKeyboardLayout Changing user locale is not supported
Can't recognise 'Play Mod.bat' as an internal or external command, or batch script.
I was wondering if someone knew how to fix this, or the other thing I heard might be possible would be converting the file into a shell script and running that instead? I’m not very versed in this subject, and was wondering if someone could help me with that. Here are the contents of the batch file
@ECHO OFF && TITLE Launch DEN Maps Mod
SET ThisScriptsDirectory=%~dp0
SET PowerShellScriptPath=%ThisScriptsDirectory%ModFilesDenMaps1.7.0-beta2PSModInstallerPlayMod.ps1
@REM if PSModInstaller folder exists, and DenMaps not
IF EXIST "%ThisScriptsDirectory%PSModInstaller" (
IF NOT EXIST "%ThisScriptsDirectory%DenMaps" (
SET PowerShellScriptPath="%ThisScriptsDirectory%PSModInstallerPlayMod.ps1"
)
)
PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& '%PowerShellScriptPath%'";
I tried to run it using Wine cmd /c "Play Mod.bat"
expected it to work, didn’t work and gave a bunch of errors instead.
Update: I attempted to run it by starting a new terminal directly from the folder it is in, and it gave me this set of errors
Matthews-Air:1.7.0-beta2 me$ wine cmd /c "Play Mod.bat"
0074:err:ntoskrnl:ZwLoadDriver failed to create driver L"\Registry\Machine\System\CurrentControlSet\Services\wineusb": c0000142
003c:fixme:service:scmdatabase_autostart_services Auto-start service L"wineusb" failed to start: 1114
009c:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
009c:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
009c:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
009c:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
00a8:fixme:keyboard:NtUserActivateKeyboardLayout Changing user locale is not supported
00bc:fixme:keyboard:NtUserActivateKeyboardLayout Changing user locale is not supported
0130:fixme:powershell:wmain stub: L"PowerShell" L"-NoProfile" L"-ExecutionPolicy" L"Bypass" L"-Command" L"& 'Z:\Users\me\Desktop\1.7.0-beta2\\ModFiles\DenMaps\1.7.0-beta2\PSModInstaller\PlayMod.ps1';"
8
Don’t use the batch file at all. It isn’t doing much.
I can’t guarantee the next (powershell) step will work, but you don’t need the batch file.
This command: PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& '%PowerShellScriptPath%'";
Find the DOS LOOKING path to PlayMod.ps1 (from Wine’s point of view) and launch powershell directly using the modified above command.
It will be under path the batch file is in.
It will probably look something like:
PowerShell -NoProfile -ExecutionPolicy Bypass -Command "C:MyCoolModDLNewEldenRingModModFilesDenMaps1.7.0-beta2PSModInstallerPlayMod.ps1";
OR
PowerShell -NoProfile -ExecutionPolicy Bypass -Command "C:MyCoolModDLNewEldenRingModPSModInstallerPlayMod.ps1;
Better still.. look for a mac solution as @music2myear hinted at..
3