opcon / turnt-ninja

game in development.
https://opcon.itch.io/turnt-ninja
GNU General Public License v3.0
14 stars 1 forks source link

[Bug] Force Close when Choosing Music from Sound Cloud Tab #28

Open ditokp opened 5 years ago

ditokp commented 5 years ago

Error Message (in Terminal):

./turnt_ninja.bin.x86_64 Running on SDL2: True Initializing Creating game camera Creating font library Loading fonts Creating scene manager Setting up input system callbacks Setting clear color Creating stopwatch Finished OnLoad [ERROR] System.Net.WebException: Error: SecureChannelFailure (mono_btls_ssl_ctx_new) ---> System.EntryPointNotFoundException: mono_btls_ssl_ctx_new at (wrapper managed-to-native) Mono.Btls.MonoBtlsSslCtx:mono_btls_ssl_ctx_new () at Mono.Btls.MonoBtlsSslCtx..ctor () [0x00000] in <f1906779a26b4632918eaf5050f2c5e0>:0 at Mono.Btls.MonoBtlsContext.InitializeConnection () [0x00000] in <f1906779a26b4632918eaf5050f2c5e0>:0 at Mono.Btls.MonoBtlsContext.StartHandshake () [0x00000] in <f1906779a26b4632918eaf5050f2c5e0>:0 at Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake (Mono.Net.Security.AsyncProtocolRequest asyncRequest, Mono.Net.Security.AsyncOperationStatus status) [0x00007] in <f1906779a26b4632918eaf5050f2c5e0>:0 at Mono.Net.Security.AsyncProtocolRequest.ProcessOperation (Mono.Net.Security.AsyncOperationStatus status) [0x00086] in <f1906779a26b4632918eaf5050f2c5e0>:0 at Mono.Net.Security.AsyncProtocolRequest.ProcessOperation () [0x0000d] in <f1906779a26b4632918eaf5050f2c5e0>:0 at Mono.Net.Security.AsyncProtocolRequest.StartOperation () [0x00000] in <f1906779a26b4632918eaf5050f2c5e0>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <f712f98eb8e445c8918edaf595bbe465>:0 at Mono.Net.Security.MobileAuthenticatedStream.ProcessAuthentication (System.Net.LazyAsyncResult lazyResult) [0x00083] in <f1906779a26b4632918eaf5050f2c5e0>:0 at Mono.Net.Security.MobileAuthenticatedStream.AuthenticateAsClient (System.String targetHost, System.Security.Cryptography.X509Certificates.X509CertificateCollection clientCertificates, System.Security.Authentication.SslProtocols enabledSslProtocols, System.Boolean checkCertificateRevocation) [0x0000c] in <f1906779a26b4632918eaf5050f2c5e0>:0 at Mono.Net.Security.Private.MonoSslStreamWrapper.AuthenticateAsClient (System.String targetHost, System.Security.Cryptography.X509Certificates.X509CertificateCollection clientCertificates, System.Security.Authentication.SslProtocols enabledSslProtocols, System.Boolean checkCertificateRevocation) [0x00006] in <f1906779a26b4632918eaf5050f2c5e0>:0 at Mono.Net.Security.MonoTlsStream.CreateStream (System.Byte[] buffer) [0x0006a] in <f1906779a26b4632918eaf5050f2c5e0>:0 --- End of inner exception stack trace --- at System.Net.HttpWebRequest.EndGetRequestStream (System.IAsyncResult asyncResult) [0x00043] in <f1906779a26b4632918eaf5050f2c5e0>:0 at System.Threading.Tasks.TaskFactory1[TResult].FromAsyncCoreLogic (System.IAsyncResult iar, System.Func2[T,TResult] endFunction, System.Action1[T] endAction, System.Threading.Tasks.Task1[TResult] promise, System.Boolean requiresSynchronization) [0x00014] in <f712f98eb8e445c8918edaf595bbe465>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <f712f98eb8e445c8918edaf595bbe465>:0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0004e] in <f712f98eb8e445c8918edaf595bbe465>:0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x0002e] in <f712f98eb8e445c8918edaf595bbe465>:0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x0000b] in <f712f98eb8e445c8918edaf595bbe465>:0 at System.Runtime.CompilerServices.TaskAwaiter1[TResult].GetResult () [0x00000] in :0 at SharpRaven.Data.Requester+d3.MoveNext () [0x00086] in <805b9bbd76f8475b851696854b6b7aa5>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0004e] in :0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x0002e] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x0000b] in :0 at System.Runtime.CompilerServices.TaskAwaiter`1[TResult].GetResult () [0x00000] in :0 at SharpRaven.RavenClient+df.MoveNext () [0x000be] in <805b9bbd76f8475b851696854b6b7aa5>:0 [ERROR] Request body (raw): [ERROR] {"culprit":"SoundCloud.API.Client.Internal.Infrastructure.Network.WebGateway in GetResponse","environment":"release","event_id":"e6a4cb638dd64921a005b97b6c96bdee","exception":[{"module":"SoundCloud.API.Client","stacktrace":{"frames":[{"abs_path":null,"colno":0,"filename":null,"function":"Main","in_app":true,"lineno":1425,"module":"TurntNinja.TurntNinjaGame","post_context":null,"pre_context":null,"context_line":"Void Main(System.String[])","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"Run","in_app":true,"lineno":0,"module":"OpenTK.GameWindow","post_context":null,"pre_context":null,"context_line":"Void Run()","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"Run","in_app":true,"lineno":198,"module":"OpenTK.GameWindow","post_context":null,"pre_context":null,"context_line":"Void Run(Double, Double)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"DispatchUpdateAndRenderFrame","in_app":true,"lineno":49,"module":"OpenTK.GameWindow","post_context":null,"pre_context":null,"context_line":"Void DispatchUpdateAndRenderFrame(System.Object, System.EventArgs)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"RaiseUpdateFrame","in_app":true,"lineno":12,"module":"OpenTK.GameWindow","post_context":null,"pre_context":null,"context_line":"Void RaiseUpdateFrame(Double, Double ByRef)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"OnUpdateFrameInternal","in_app":true,"lineno":16,"module":"OpenTK.GameWindow","post_context":null,"pre_context":null,"context_line":"Void OnUpdateFrameInternal(OpenTK.FrameEventArgs)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"OnUpdateFrame","in_app":true,"lineno":56,"module":"TurntNinja.GameController","post_context":null,"pre_context":null,"context_line":"Void OnUpdateFrame(OpenTK.FrameEventArgs)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"Update","in_app":true,"lineno":513,"module":"Substructio.GUI.SceneManager","post_context":null,"pre_context":null,"context_line":"Void Update(Double)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"Update","in_app":true,"lineno":30,"module":"TurntNinja.GUI.ChooseSongScene","post_context":null,"pre_context":null,"context_line":"Void Update(Double, Boolean)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"Update","in_app":true,"lineno":322,"module":"TurntNinja.FileSystem.DirectoryBrowser","post_context":null,"pre_context":null,"context_line":"Void Update(Double)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"EntrySelected","in_app":true,"lineno":121,"module":"TurntNinja.FileSystem.SoundCloudFileSystem","post_context":null,"pre_context":null,"context_line":"Boolean EntrySelected(Int32 ByRef)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"GetTracks","in_app":true,"lineno":173,"module":"SoundCloud.API.Client.Subresources.ChartApi","post_context":null,"pre_context":null,"context_line":"SoundCloud.API.Client.Objects.SCTrack[] GetTracks(SoundCloud.API.Client.Objects.SCExploreCategory, Int32, Int32)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"Request","in_app":true,"lineno":0,"module":"SoundCloud.API.Client.Internal.Client.SoundCloudRawClient","post_context":null,"pre_context":null,"context_line":"SoundCloud.API.Client.Internal.Objects.ChartTrackCollection Request[ChartTrackCollection](System.String, System.String, SoundCloud.API.Client.Internal.Infrastructure.Objects.HttpMethod, System.Collections.Generic.Dictionary2[System.String,System.Object], Byte[], System.String, SoundCloud.API.Client.Internal.Client.Helpers.Domain)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"GetResponse","in_app":true,"lineno":19,"module":"SoundCloud.API.Client.Internal.Client.SoundCloudRawClient","post_context":null,"pre_context":null,"context_line":"System.String GetResponse(SoundCloud.API.Client.Internal.Client.Helpers.Domain, System.String, System.String, SoundCloud.API.Client.Internal.Infrastructure.Objects.HttpMethod, System.Collections.Generic.Dictionary2[System.String,System.Object], Byte[], System.String)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"Request","in_app":true,"lineno":14,"module":"SoundCloud.API.Client.Internal.Infrastructure.Network.WebGateway","post_context":null,"pre_context":null,"context_line":"System.String Request(SoundCloud.API.Client.Internal.Client.Helpers.IUriBuilder, SoundCloud.API.Client.Internal.Infrastructure.Objects.HttpMethod, System.Collections.Generic.Dictionary2[System.String,System.Object], Byte[], System.String)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"GetContent","in_app":true,"lineno":0,"module":"SoundCloud.API.Client.Internal.Infrastructure.Network.WebGateway","post_context":null,"pre_context":null,"context_line":"System.String GetContent(System.Net.WebRequest, System.Func3[System.Int32,System.String,System.String])","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"GetResponse","in_app":true,"lineno":27,"module":"SoundCloud.API.Client.Internal.Infrastructure.Network.WebGateway","post_context":null,"pre_context":null,"context_line":"System.Net.HttpWebResponse GetResponse(System.Net.WebRequest, System.Func3[System.Int32,System.String,System.String])","vars":null}]},"type":"NullReferenceException","value":"Object reference not set to an instance of an object"}],"extra":{},"fingerprint":[],"level":"error","logger":"root","message":"Object reference not set to an instance of an object","sentry.interfaces.Message":{"message":"Object reference not set to an instance of an object"},"modules":{"CSCore":"1.1.35.0","CSCore.OSX":"1.1.35.0","Gwen":"4.0.6207.13461","Gwen.Renderer.OpenTK":"4.0.6207.13461","Mono.Security":"4.0.0.0","mscorlib":"4.0.0.0","Newtonsoft.Json":"9.0.0.0","OpenTK":"2.0.0.0","Piwik.Tracker":"2.8.0.0","QuickFont":"4.4.6273.17496","SharpFont":"4.0.1.200","SharpRaven":"2.2.0.0","SoundCloud.API.Client":"1.0.0.4","Splat":"2.0.0.0","Squirrel":"1.5.2.0","Substructio":"0.15.6274.22196","System":"4.0.0.0","System.Configuration":"4.0.0.0","System.Core":"4.0.0.0","System.Data":"4.0.0.0","System.Drawing":"4.0.0.0","System.Numerics":"4.0.0.0","System.Runtime.Serialization":"4.0.0.0","System.Web":"4.0.0.0","System.Web.Extensions":"4.0.0.0","System.Windows.Forms":"4.0.0.0","System.Xml":"4.0.0.0","System.Xml.Linq":"4.0.0.0","turnt_ninja":"0.15.6274.22197"},"platform":"csharp","project":"2","release":"0.15.6274","server_name":"","tags":{"OS":"Linux 4.15.0.42","opengl":"3.0 Mesa 18.0.5","glsl":"1.30","vendor":"Intel Open Source Technology Center","gpu":"Mesa DRI Intel(R) Sandybridge Mobile ","sdl":"True"},"timestamp":"2018-12-10T07:03:45.696805Z","user":{"username":"7a6c3c36-e8ea-4d96-aac2-43b17a05874a"}} [ERROR] Request body (scrubbed): [ERROR] {"culprit":"SoundCloud.API.Client.Internal.Infrastructure.Network.WebGateway in GetResponse","environment":"release","event_id":"e6a4cb638dd64921a005b97b6c96bdee","exception":[{"module":"SoundCloud.API.Client","stacktrace":{"frames":[{"abs_path":null,"colno":0,"filename":null,"function":"Main","in_app":true,"lineno":1425,"module":"TurntNinja.TurntNinjaGame","post_context":null,"pre_context":null,"context_line":"Void Main(System.String[])","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"Run","in_app":true,"lineno":0,"module":"OpenTK.GameWindow","post_context":null,"pre_context":null,"context_line":"Void Run()","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"Run","in_app":true,"lineno":198,"module":"OpenTK.GameWindow","post_context":null,"pre_context":null,"context_line":"Void Run(Double, Double)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"DispatchUpdateAndRenderFrame","in_app":true,"lineno":49,"module":"OpenTK.GameWindow","post_context":null,"pre_context":null,"context_line":"Void DispatchUpdateAndRenderFrame(System.Object, System.EventArgs)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"RaiseUpdateFrame","in_app":true,"lineno":12,"module":"OpenTK.GameWindow","post_context":null,"pre_context":null,"context_line":"Void RaiseUpdateFrame(Double, Double ByRef)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"OnUpdateFrameInternal","in_app":true,"lineno":16,"module":"OpenTK.GameWindow","post_context":null,"pre_context":null,"context_line":"Void OnUpdateFrameInternal(OpenTK.FrameEventArgs)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"OnUpdateFrame","in_app":true,"lineno":56,"module":"TurntNinja.GameController","post_context":null,"pre_context":null,"context_line":"Void OnUpdateFrame(OpenTK.FrameEventArgs)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"Update","in_app":true,"lineno":513,"module":"Substructio.GUI.SceneManager","post_context":null,"pre_context":null,"context_line":"Void Update(Double)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"Update","in_app":true,"lineno":30,"module":"TurntNinja.GUI.ChooseSongScene","post_context":null,"pre_context":null,"context_line":"Void Update(Double, Boolean)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"Update","in_app":true,"lineno":322,"module":"TurntNinja.FileSystem.DirectoryBrowser","post_context":null,"pre_context":null,"context_line":"Void Update(Double)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"EntrySelected","in_app":true,"lineno":121,"module":"TurntNinja.FileSystem.SoundCloudFileSystem","post_context":null,"pre_context":null,"context_line":"Boolean EntrySelected(Int32 ByRef)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"GetTracks","in_app":true,"lineno":173,"module":"SoundCloud.API.Client.Subresources.ChartApi","post_context":null,"pre_context":null,"context_line":"SoundCloud.API.Client.Objects.SCTrack[] GetTracks(SoundCloud.API.Client.Objects.SCExploreCategory, Int32, Int32)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"Request","in_app":true,"lineno":0,"module":"SoundCloud.API.Client.Internal.Client.SoundCloudRawClient","post_context":null,"pre_context":null,"context_line":"SoundCloud.API.Client.Internal.Objects.ChartTrackCollection Request[ChartTrackCollection](System.String, System.String, SoundCloud.API.Client.Internal.Infrastructure.Objects.HttpMethod, System.Collections.Generic.Dictionary2[System.String,System.Object], Byte[], System.String, SoundCloud.API.Client.Internal.Client.Helpers.Domain)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"GetResponse","in_app":true,"lineno":19,"module":"SoundCloud.API.Client.Internal.Client.SoundCloudRawClient","post_context":null,"pre_context":null,"context_line":"System.String GetResponse(SoundCloud.API.Client.Internal.Client.Helpers.Domain, System.String, System.String, SoundCloud.API.Client.Internal.Infrastructure.Objects.HttpMethod, System.Collections.Generic.Dictionary2[System.String,System.Object], Byte[], System.String)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"Request","in_app":true,"lineno":14,"module":"SoundCloud.API.Client.Internal.Infrastructure.Network.WebGateway","post_context":null,"pre_context":null,"context_line":"System.String Request(SoundCloud.API.Client.Internal.Client.Helpers.IUriBuilder, SoundCloud.API.Client.Internal.Infrastructure.Objects.HttpMethod, System.Collections.Generic.Dictionary2[System.String,System.Object], Byte[], System.String)","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"GetContent","in_app":true,"lineno":0,"module":"SoundCloud.API.Client.Internal.Infrastructure.Network.WebGateway","post_context":null,"pre_context":null,"context_line":"System.String GetContent(System.Net.WebRequest, System.Func3[System.Int32,System.String,System.String])","vars":null},{"abs_path":null,"colno":0,"filename":null,"function":"GetResponse","in_app":true,"lineno":27,"module":"SoundCloud.API.Client.Internal.Infrastructure.Network.WebGateway","post_context":null,"pre_context":null,"context_line":"System.Net.HttpWebResponse GetResponse(System.Net.WebRequest, System.Func3[System.Int32,System.String,System.String])","vars":null}]},"type":"NullReferenceException","value":"Object reference not set to an instance of an object"}],"extra":{},"fingerprint":[],"level":"error","logger":"root","message":"Object reference not set to an instance of an object","sentry.interfaces.Message":{"message":"Object reference not set to an instance of an object"},"modules":{"CSCore":"1.1.35.0","CSCore.OSX":"1.1.35.0","Gwen":"4.0.6207.13461","Gwen.Renderer.OpenTK":"4.0.6207.13461","Mono.Security":"4.0.0.0","mscorlib":"4.0.0.0","Newtonsoft.Json":"9.0.0.0","OpenTK":"2.0.0.0","Piwik.Tracker":"2.8.0.0","QuickFont":"4.4.6273.17496","SharpFont":"4.0.1.200","SharpRaven":"2.2.0.0","SoundCloud.API.Client":"1.0.0.4","Splat":"2.0.0.0","Squirrel":"1.5.2.0","Substructio":"0.15.6274.22196","System":"4.0.0.0","System.Configuration":"4.0.0.0","System.Core":"4.0.0.0","System.Data":"4.0.0.0","System.Drawing":"4.0.0.0","System.Numerics":"4.0.0.0","System.Runtime.Serialization":"4.0.0.0","System.Web":"4.0.0.0","System.Web.Extensions":"4.0.0.0","System.Windows.Forms":"4.0.0.0","System.Xml":"4.0.0.0","System.Xml.Linq":"4.0.0.0","turnt_ninja":"0.15.6274.22197"},"platform":"csharp","project":"2","release":"0.15.6274","server_name":"","tags":{"OS":"Linux 4.15.0.42","opengl":"3.0 Mesa 18.0.5","glsl":"1.30","vendor":"Intel Open Source Technology Center","gpu":"Mesa DRI Intel(R) Sandybridge Mobile ","sdl":"True"},"timestamp":"2018-12-10T07:03:45.696805Z","user":{"username":"7a6c3c36-e8ea-4d96-aac2-43b17a05874a"}} [ERROR] Request headers: [ERROR] Accept: application/json [ERROR] X-Sentry-Auth: Sentry sentry_version=7, sentry_client=SharpRaven/2.2.0.0, sentry_timestamp=1544425426, sentry_key=bc21e1e426064e98b1713291dc2a8a4a, sentry_secret=0ed04023215e440ea38ef83f75bdcb32 [ERROR] User-Agent: SharpRaven/2.2.0.0 [ERROR] Content-Type: application/json; charset=utf-8 `

My system specs: Lubuntu 18.04.1 LTS 64-bit

opcon commented 5 years ago

Hi @ditokp,

Thanks for the report.

Unfortunately I never really got SSL connections working with the stand-alone Linux version of the game, something to do with how mono is bundled. That is causing the exception - because https is used to access the soundcloud api.

Even if that was working, there is another issue unfortunately - the Linux version of the audio library I am using does not support mp3 files. This was due to the mp3 patents still in effect when I was building this game. They are now expired, so I could use ffmpeg to decode mp3 files on Linux at some point, but it's not implemented.

Playing FLAC or WAV files locally should work okay on Linux though, sorry again about the mp3 files!

ditokp commented 5 years ago

Hello, thank you for making this awesome game, and I'm sorry for replying late.

Okay, I will try that audio format.