D2Bot on Wine

Hopefully you guys can help me. I’ve hit a roadblock.

I’ve setup the old 113d-core15 branch on a Wine install on my Mac. I installed dotnet45 and vcrun2010 as they are the known dependencies. The manager loads fine, I create my profile, and I hit start. The game launches as expected, but I get errors immediately and the system hangs.

The console prints:

libnspr4.dll failed to load
Window crashed on load! Restarting.
js32.dll failed to load
Window crashed on load! Restarting.
D2BS.dll failed to load
Window crashed on load! Restarting.

Note that the repo doesn’t include two of these DLLs, but I did find another branch which did include them. Adding these DLLs to my Wine system had no effect.

My terminal prints errors live from Wine:

Unhandled Exception: System.ComponentModel.Win32Exception: Access denied
   at System.Diagnostics.ProcessManager.OpenProcess(Int32 processId, Int32 access, Boolean throwIfExited)
   at System.Diagnostics.Process.GetProcessHandle(Int32 access, Boolean throwIfExited)
   at System.Diagnostics.Process.get_HasExited()
   at D2Bot.D2Profile.StopClient() in C:\Users\QQ\Desktop\New folder (4)\d2botsharp\D2Profile.cs:line 204
   at D2Bot.D2Profile.<Stop>b__0() in C:\Users\QQ\Desktop\New folder (4)\d2botsharp\D2Profile.cs:line 259
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()

Since Wine automatically runs all apps as administrator, I’m not sure what else I can do.

Any advice on how to get this working would be appreciated. I wasn’t able to find any search results for others who have gotten this to work on Wine.

Hi @whipowill,
A quick two questions.

  • Are you attempting to run an older instance of d2bs so that you can play on single player? As in not on battlenet.
  • Or, are you running an older version and trying to log into battlenet?

Thanks. Hope we can figure this out.

Hi guysm anyone managed to get it run on wine?
I have a similar issue I think it is related to .net . I can start the manager and run diablo 2 and even inject all the bot code into d2, however after a few seconds the d2bs manager crashes with an unhandled exception.

Is there another loader I could use which works with a lower .net version for instance?