GamingCoookie / dv-multiplayer-continued

A multiplayer modification for the game Derail Valley
Other
14 stars 5 forks source link

Stuck on "Loading Save game" #10

Closed matejdro closed 2 years ago

matejdro commented 2 years ago

Describe the bug

Connection does not appear to work. Whenever we attempt to connect, connecting player is stuck at "Loading Save Game" and host is stuck at "Incoming Connection".

There are bunch of exceptions in below logs, likely related. Neither host nor connecting clients have any other mod installed other than this one.

NullReferenceException: Object reference not set to an instance of an object
  at NetworkTrainManager.GenerateServerCarsData (System.Collections.Generic.IEnumerable`1[T] cars) [0x0074a] in <6da3716eae18415cb290bbc722daf2cb>:0 
  at NetworkTrainManager.SendInitializedCars () [0x00030] in <6da3716eae18415cb290bbc722daf2cb>:0 
  at NetworkTrainManager.OnFinishedLoading () [0x000a8] in <6da3716eae18415cb290bbc722daf2cb>:0 
  at NetworkPlayerManager+<WaitForInit>d__18.MoveNext () [0x0041f] in <6da3716eae18415cb290bbc722daf2cb>:0 
  at UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) [0x00026] in <c8dc2b468d1841099baa4dd8a110cc44>:0 
UnityEngine.MonoBehaviour:StartCoroutineManaged2(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
CoroutineManager:Run(IEnumerator)
NetworkPlayerManager:PlayerConnect()
DVMultiplayer.Networking.NetworkManager:OnConnected(Exception)
DarkRift.Client.Unity.<>c__DisplayClass65_1:<ConnectInBackground>b__1()
DarkRift.Dispatching.ActionDispatcherTask:Execute(Boolean)
DarkRift.Dispatching.Dispatcher:ExecuteDispatcherTasks()
DarkRift.Client.Unity.UnityClient:Update()
InvalidOperationException: Sequence contains no matching element
  at System.Linq.Enumerable.First[TSource] (System.Collections.Generic.IEnumerable`1[T] source, System.Func`2[T,TResult] predicate) [0x00011] in <351e49e2a5bf4fd6beabb458ce2255f3>:0 
  at NetworkTrainSync.Update () [0x00005] in <6da3716eae18415cb290bbc722daf2cb>:0 
NullReferenceException: Object reference not set to an instance of an object
  at JobSaveManager.InitializeCorrespondingJobBooklet (DV.Logic.Job.Job job) [0x0000d] in <2dd118c8baed420694a6351a815fc83d>:0 
  at JobSaveManager.LoadJobChain (JobChainSaveData chainSaveData) [0x00a5e] in <2dd118c8baed420694a6351a815fc83d>:0 
  at NetworkJobsManager.OnJobSyncMessage (DarkRift.Message message) [0x000a6] in <6da3716eae18415cb290bbc722daf2cb>:0 
  at NetworkJobsManager.MessageReceived (System.Object sender, DarkRift.Client.MessageReceivedEventArgs e) [0x00052] in <6da3716eae18415cb290bbc722daf2cb>:0 
  at (wrapper delegate-invoke) System.EventHandler`1[DarkRift.Client.MessageReceivedEventArgs].invoke_void_object_TEventArgs(object,DarkRift.Client.MessageReceivedEventArgs)
  at DarkRift.Client.Unity.UnityClient+<>c__DisplayClass70_0.<Client_MessageReceived>b__0 () [0x0000f] in <6da3716eae18415cb290bbc722daf2cb>:0 
  at DarkRift.Dispatching.ActionDispatcherTask.Execute (System.Boolean synchronous) [0x00002] in <4b5ffaf6beb54973b5ceb1dc1b9e10d7>:0 
Rethrow as DispatcherException: An exception occurred whilst running a distaptcher task. See inner exception for more details.
  at DarkRift.Dispatching.ActionDispatcherTask.Execute (System.Boolean synchronous) [0x00026] in <4b5ffaf6beb54973b5ceb1dc1b9e10d7>:0 
  at DarkRift.Dispatching.Dispatcher.ExecuteDispatcherTasks () [0x0007f] in <4b5ffaf6beb54973b5ceb1dc1b9e10d7>:0 
  at DarkRift.Client.Unity.UnityClient.Update () [0x00006] in <6da3716eae18415cb290bbc722daf2cb>:0  
NullReferenceException: Object reference not set to an instance of an object
  at NetworkJobsManager.OnDestroy () [0x000fc] in <6da3716eae18415cb290bbc722daf2cb>:0  

To Reproduce Steps to reproduce the behavior:

  1. Host a game on machine A
  2. Attempt to connect from machine B

Expected behavior Connection should work

Desktop (please complete the following information):

Additional context

Full logs:

ConnectingPlayer.log Server.log

GamingCoookie commented 2 years ago

Thank you for the bug report. That's so odd! It's failing at GenerateServerCarsData because the interior of a DE6 isn't loaded when it should be. In 1.4 when it ever comes out that should be fixed but I am gonna make a hot 1.3.8.1 update rn. The Job thing I don't know, I've only encountered job issues in the context of also having persistent jobs installed ever :/

matejdro commented 2 years ago

None of the involved parties has ever seen the interior of a DE6 (we are all very early in the game), so it is possible it has not loaded yet.

We will check out the fix, amazing job on releasing it so fast, thanks!

EliteCobraTyler commented 2 years ago

None of the involved parties has ever seen the interior of a DE6 (we are all very early in the game), so it is possible it has not loaded yet.

We will check out the fix, amazing job on releasing it so fast, thanks!

Did the update ever fix the issue? Me and my friend had the same exact issue as you were having.

matejdro commented 2 years ago

Just tested it and it worked!

It worked surprisingly well, I hope you don't mind me filling some more tickets. Also, multiple DE2 seemed to work pretty well, despite having :x: in the readme.

Do you have a paypal link somewhere? I would love to buy you a cup of coffee for your great work.

matejdro commented 2 years ago

Do you want me to close the issue or do we leave it open for the other errors? I'm not sure what that those other errors do or if they affecting anything.

GamingCoookie commented 2 years ago

Great to hear that the fix did it!

Do you have a paypal link somewhere? I would love to buy you a cup of coffee for your great work.

Haha, keep your money for yourself. I didn't do nearly enough yet for the mod to deserve getting money, maybe after 1.4 has been released but that's still a bit away at the pace I am working at :')