World Soft-Crashing on Player Leave (Duel World)
complete
Wheathn
As title says, the EventHandlerAndInstantiator script on the master client's end goes haywire after (a random chance) of someone leaving. This results in players not being able to use any world triggers, drop portals, switch avatars, new joiners get kicked, and more.
Screenie from log attatched.
Brief overview of the world and triggers used: https://www.youtube.com/watch?v=cDCmlSQyY40
Log In
Aev
complete
Pan Diman
Finally, it's "In Progress". Feels like I've been waiting 12 years for this.
Kroama Amaork
Pan Diman: Right? This has been killing me for the past 8 months, no joke.
Pan Diman
Kroama Amaork: Yeah, everything started to feel entirely different around New Year's, even without considering the fact VRChat got overcrowded. Although that had to be the reason why development slowed down immediately.
Tupper - VRChat Head of Community
in progress
Fixed in 2018.2.3 Beta. Will update when we are pushed to Live.
H
Hugo Zink
Tupper - VRChat Head of Community: is this still in progress or actually fixed?
Kanata
I've succeeded to reproduce the situation with 1000 VRC_EventHandler.
Here is my project https://drive.google.com/file/d/14A64iWdhZIprCoZFUiiGDS7HiKdDT5JJ/view
and my tweet thread https://twitter.com/Kanata_VRC/status/1027905414917046272
But you don't have to try it because it's already fixed on the open beta!
I tried several times my project on the release branch and the open beta.
In release, I got soft crush every time.
In beta, there was totally no problem.
Tupper - VRChat Head of Community
Kanata: Yes, we've made some changes that should address this bug. I'm not marking it as fixed just yet (since we're still in Beta), but I will do so once we push to Live and the OP has had time to test.
Wheathn
Tupper - VRChat Head of Community: To confirm, today on the beta I took a group of around 5, and had them leave and re-enter repeatedly. We did not run into the bug, but we did see a different, less serious bug which also stopped them from rejoining. https://i.imgur.com/YpGUg7r.png
Tupper - VRChat Head of Community
Wheathn: Thankfully that bug has been fixed as well.
B
Beanow
Kroama Amaork Siber Freak
It looks like Codybean has found the underlying issue.
As you can see in the logs I posted, DestroyObjects gets replicated on master leaving:
[Log:7/30/2018 8:05:46 PM] Replicating [0 SendRPC/AlwaysUnbuffered w: 5 s: _DestroyObjects i: 0 f: 0 b: Unused B: 219 p: :51300000000/]
And destroying an object twice causes all the symptoms described here.
Siber Freak
Beanow: Yup can confirm, that timer that was going off at the start for the master had lost its assigned game objects, not sure what caused it to lose its assignments though as I hadn't touched it or the objects it controls for a long time :/
Siber Freak
When integrating the newest sdk into my map I experienced the same bug that appeared afterwards that whenever you create an instance of said world, the instance "breaks" as I like to call it after 5 to 10 minutes in the instance. Although it wasn't a case of someone leaving that caused the issue for me. What happens is that people who try to join the instance after it breaks get a black screen upon load and after about ten seconds they get kicked to a different instance of the world, be that a new instance or a different public instance. Another note is that even when allowed to, the persons in said broken instance are unable to drop a portal and not due to anything being in the way to do so, it simply does nothing when you hit the drop portal button in your ui menu.
Kroama Amaork
Siber Freak: That sounds very similar, though sparked differently. Can you check your log of when it happens and see if it also has the PhotonHandler bit? Also, if it does, what specifically starts it? Just curious to compare. Also, more chatter on this bug is good for all of us i think.
Siber Freak
Kroama Amaork: I'll be sure to look into that next time I have some free time
Siber Freak
Kroama Amaork: So just an update here, I did manage to fix my world instance breaking bug but I'm not entirely sure how I did it to be honest. All I did was make sure no triggers were immediately affecting the player before the master "loaded" in as I saw a timer triggered during the setup phase of the output log. I looked through my output log after simply launching vrchat, going to my world, and waiting for the instance to break then left the game, and I couldn't find anything to do with PhotonHandlers but there were some Null references in there. I'm going to be going through the output logs of my test of the fixed version sometime this week when I get the chance to and compare it with the broken instance output logs. I'll see if there are any major differences and report them back to this thread.
Kroama Amaork
Siber Freak: A lot of times it happens for me also when the host leaves (or maybe when a new person is the target of syncs?)
B
Beanow
Siber Freak Kroama Amaork: Yes for me I've only seen this behavior when the host leaves. See the "OnMasterClientSwitched" in my logs above.
B
Beanow
Same problem for me in my world.
Once the instance owner leaves it goes into a completely unusable state. I'll update if I find out more.
B
Beanow
I found mine to give a different error. This was me not being the instance owner. Afterwards all events broke down and new joiners get kicked with the black screen.
[Log:7/30/2018 8:05:46 PM] <color=grey>OnMasterClientSwitched</color>
[Log:7/30/2018 8:05:46 PM] <color=grey>OnPhotonPlayerDisconnected</color>
[Log:7/30/2018 8:05:46 PM] <color=grey>OnPlayerLeft VRCPlayer[Remote] PersonDisplayName 1</color>
[Log:7/30/2018 8:05:46 PM] [Coherent Browser] (Info) Removing view 46
[Log:7/30/2018 8:05:46 PM] Replicating [0 SendRPC/AlwaysUnbuffered w: 5 s: _DestroyObjects i: 0 f: 0 b: Unused B: 219 p: :51300000000/]
[Log:7/30/2018 8:05:46 PM] Executing event <color=lightblue>[ of type SendRPC (Unused, 0.000, 0, SceneEventHandlerAndInstantiator, _DestroyObjects, 219) for 5]</color>
[Error:7/30/2018 8:05:46 PM] Could not find any components capable of receiving RPC "_DestroyObjects(List`1)" on object "SceneEventHandlerAndInstantiator" with path ":51300000000/" and targets "All" but found close matches with unsuitable parameters:
Void _DestroyObjects(System.Int32[])
[Log:7/30/2018 8:05:46 PM] [Coherent Browser] (Info) Removing view 53
[Log:7/30/2018 8:05:46 PM] [Coherent Browser] (Info) Removing view 51
[Log:7/30/2018 8:05:46 PM] [Coherent Browser] (Warning) Unexpected Render Target format 10! Expected is DXGI_FORMAT_R8G8B8A8_UNORM_SRGB.
[Warning:7/30/2018 8:05:46 PM] Received OnSerialization for view ID 1149. We have no such PhotonView! Ignored this if you're entering or leaving a room. State: Joined
[Warning:7/30/2018 8:05:46 PM] Received OnSerialization for view ID 1015. We have no such PhotonView! Ignored this if you're entering or leaving a room. State: Joined
B
Beanow
Actually had another softcrash and now it did have those logs.
[Log:7/30/2018 10:58:30 PM] <color=grey>OnMasterClientSwitched</color>
[Log:7/30/2018 10:58:30 PM] <color=grey>OnPhotonPlayerDisconnected</color>
[Error:7/30/2018 10:58:30 PM] Error; Only the MasterClient can call RemoveRPCs for other players.
[Log:7/30/2018 10:58:30 PM] <color=grey>OnPlayerLeft VRCPlayer[Remote] someonesusername 2</color>
[Exception:7/30/2018 10:58:30 PM] NullReferenceException
DDHBIPANJEH.HIGIPELJBOP ()
PhotonHandler.Update ()
[Exception:7/30/2018 10:58:30 PM] NullReferenceException
DDHBIPANJEH.HIGIPELJBOP ()
PhotonHandler.Update ()
[Exception:7/30/2018 10:58:30 PM] NullReferenceException
DDHBIPANJEH.HIGIPELJBOP ()
PhotonHandler.Update ()
Kroama Amaork
Just an update that this is still very much active on my world when i break into a higher complexity. Same type of errors appears en masse.
[Exception:6/29/2018 1:03:24 PM] NullReferenceException
DDHBIPANJEH.HIGIPELJBOP ()
PhotonHandler.Update ()
Kroama Amaork
I have this same issue on my own map, though i am able to reproduce the issue perfectly. If a Mod ever wants to see the bug in action, i can show them exactly the problem. I worked with Wheathn a little, when i reduce the number of triggers to below 2000 or so, the issue seems to disappear.
Below is a video of the bug in action. I forgot to record my own audio.
Kroama Amaork
I lied about a fix, this is an edit... The bug doesn't disappear entirely in said fix. Instead, it seems some of the triggers mess up and a few animators stop working... when a second person leaves, it does continue on to the normal symptoms of the weird de-sync issue.