Wine 6.16 (not staging).
Grim Dawn had been working fine in both Wine and Steam’s Proton. Now it will only do a black screen.
The game has a repair.exe tool. Running it outputs Unhandled Exception errors.
People running other Linux distros say it is still working fine for them which makes me suspect it’s something in Tumbleweed and not Wine.
Unhandled Exception:
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ArgumentException: XOR data length expected 2046820352, read 72782
Parameter name: stream
at System.Drawing.Icon.InitFromStreamWithSize (System.IO.Stream stream, System.Int32 width, System.Int32 height) [0x0073a] in <099e462bbfe24db5a8c6ce2890150b64>:0
at System.Drawing.Icon..ctor (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) [0x00095] in <099e462bbfe24db5a8c6ce2890150b64>:0
at (wrapper managed-to-native) System.Reflection.RuntimeConstructorInfo.InternalInvoke(System.Reflection.RuntimeConstructorInfo,object,object],System.Exception&)
at System.Reflection.RuntimeConstructorInfo.InternalInvoke (System.Object obj, System.Object] parameters, System.Boolean wrapExceptions) [0x00005] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
--- End of inner exception stack trace ---
at System.Reflection.RuntimeConstructorInfo.InternalInvoke (System.Object obj, System.Object] parameters, System.Boolean wrapExceptions) [0x0001a] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Reflection.RuntimeConstructorInfo.DoInvoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object] parameters, System.Globalization.CultureInfo culture) [0x00086] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Reflection.RuntimeConstructorInfo.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object] parameters, System.Globalization.CultureInfo culture) [0x0002f] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object] parameters) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Reflection.RuntimeConstructorInfo.SerializationInvoke (System.Object target, System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.ObjectManager.CompleteISerializableObject (System.Object obj, System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) [0x00059] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.ObjectManager.FixupSpecialObject (System.Runtime.Serialization.ObjectHolder holder) [0x00088] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.ObjectManager.DoFixups () [0x0005a] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize (System.Runtime.Remoting.Messaging.HeaderHandler handler, System.Runtime.Serialization.Formatters.Binary.__BinaryParser serParser, System.Boolean fCheck, System.Boolean isCrossAppDomain, System.Runtime.Remoting.Messaging.IMethodCallMessage methodCallMessage) [0x00077] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize (System.IO.Stream serializationStream, System.Runtime.Remoting.Messaging.HeaderHandler handler, System.Boolean fCheck, System.Boolean isCrossAppDomain, System.Runtime.Remoting.Messaging.IMethodCallMessage methodCallMessage) [0x000a2] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize (System.IO.Stream serializationStream, System.Runtime.Remoting.Messaging.HeaderHandler handler, System.Boolean fCheck, System.Runtime.Remoting.Messaging.IMethodCallMessage methodCallMessage) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize (System.IO.Stream serializationStream, System.Runtime.Remoting.Messaging.HeaderHandler handler, System.Boolean fCheck) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize (System.IO.Stream serializationStream, System.Runtime.Remoting.Messaging.HeaderHandler handler) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize (System.IO.Stream serializationStream) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.ResourceReader.DeserializeObject (System.Int32 typeIndex) [0x00019] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.ResourceReader._LoadObjectV2 (System.Int32 pos, System.Resources.ResourceTypeCode& typeCode) [0x0035b] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.ResourceReader.LoadObjectV2 (System.Int32 pos, System.Resources.ResourceTypeCode& typeCode) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.ResourceReader.LoadObject (System.Int32 pos, System.Resources.ResourceTypeCode& typeCode) [0x00022] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.RuntimeResourceSet.GetObject (System.String key, System.Boolean ignoreCase, System.Boolean isString) [0x000b4] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.RuntimeResourceSet.GetObject (System.String key, System.Boolean ignoreCase) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.ResourceManager.GetObject (System.String name, System.Globalization.CultureInfo culture, System.Boolean wrapUnmanagedMemStream) [0x0008e] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.ResourceManager.GetObject (System.String name) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at Repair.FormMain.InitializeComponent () [0x00464] in <b4c3c59a51744bfa8a9049d435d3d111>:0
at Repair.FormMain..ctor () [0x00006] in <b4c3c59a51744bfa8a9049d435d3d111>:0
at (wrapper remoting-invoke-with-check) Repair.FormMain..ctor()
at Repair.Program.Main () [0x0000b] in <b4c3c59a51744bfa8a9049d435d3d111>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ArgumentException: XOR data length expected 2046820352, read 72782
Parameter name: stream
at System.Drawing.Icon.InitFromStreamWithSize (System.IO.Stream stream, System.Int32 width, System.Int32 height) [0x0073a] in <099e462bbfe24db5a8c6ce2890150b64>:0
at System.Drawing.Icon..ctor (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) [0x00095] in <099e462bbfe24db5a8c6ce2890150b64>:0
at (wrapper managed-to-native) System.Reflection.RuntimeConstructorInfo.InternalInvoke(System.Reflection.RuntimeConstructorInfo,object,object],System.Exception&)
at System.Reflection.RuntimeConstructorInfo.InternalInvoke (System.Object obj, System.Object] parameters, System.Boolean wrapExceptions) [0x00005] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
--- End of inner exception stack trace ---
at System.Reflection.RuntimeConstructorInfo.InternalInvoke (System.Object obj, System.Object] parameters, System.Boolean wrapExceptions) [0x0001a] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Reflection.RuntimeConstructorInfo.DoInvoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object] parameters, System.Globalization.CultureInfo culture) [0x00086] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Reflection.RuntimeConstructorInfo.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object] parameters, System.Globalization.CultureInfo culture) [0x0002f] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object] parameters) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Reflection.RuntimeConstructorInfo.SerializationInvoke (System.Object target, System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.ObjectManager.CompleteISerializableObject (System.Object obj, System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) [0x00059] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.ObjectManager.FixupSpecialObject (System.Runtime.Serialization.ObjectHolder holder) [0x00088] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.ObjectManager.DoFixups () [0x0005a] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize (System.Runtime.Remoting.Messaging.HeaderHandler handler, System.Runtime.Serialization.Formatters.Binary.__BinaryParser serParser, System.Boolean fCheck, System.Boolean isCrossAppDomain, System.Runtime.Remoting.Messaging.IMethodCallMessage methodCallMessage) [0x00077] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize (System.IO.Stream serializationStream, System.Runtime.Remoting.Messaging.HeaderHandler handler, System.Boolean fCheck, System.Boolean isCrossAppDomain, System.Runtime.Remoting.Messaging.IMethodCallMessage methodCallMessage) [0x000a2] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize (System.IO.Stream serializationStream, System.Runtime.Remoting.Messaging.HeaderHandler handler, System.Boolean fCheck, System.Runtime.Remoting.Messaging.IMethodCallMessage methodCallMessage) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize (System.IO.Stream serializationStream, System.Runtime.Remoting.Messaging.HeaderHandler handler, System.Boolean fCheck) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize (System.IO.Stream serializationStream, System.Runtime.Remoting.Messaging.HeaderHandler handler) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize (System.IO.Stream serializationStream) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.ResourceReader.DeserializeObject (System.Int32 typeIndex) [0x00019] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.ResourceReader._LoadObjectV2 (System.Int32 pos, System.Resources.ResourceTypeCode& typeCode) [0x0035b] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.ResourceReader.LoadObjectV2 (System.Int32 pos, System.Resources.ResourceTypeCode& typeCode) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.ResourceReader.LoadObject (System.Int32 pos, System.Resources.ResourceTypeCode& typeCode) [0x00022] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.RuntimeResourceSet.GetObject (System.String key, System.Boolean ignoreCase, System.Boolean isString) [0x000b4] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.RuntimeResourceSet.GetObject (System.String key, System.Boolean ignoreCase) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.ResourceManager.GetObject (System.String name, System.Globalization.CultureInfo culture, System.Boolean wrapUnmanagedMemStream) [0x0008e] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at System.Resources.ResourceManager.GetObject (System.String name) [0x00000] in <373bec4b1e6c428eb4e9ef6a5beee544>:0
at Repair.FormMain.InitializeComponent () [0x00464] in <b4c3c59a51744bfa8a9049d435d3d111>:0
at Repair.FormMain..ctor () [0x00006] in <b4c3c59a51744bfa8a9049d435d3d111>:0
at (wrapper remoting-invoke-with-check) Repair.FormMain..ctor()