More Mind-numbing Multiplayer Mishaps

0 favourites
  • 7 posts
From the Asset Store
A set of board games to make your day joyful. Play, Enjoy, Relax
  • Hi friends,

    I have been having an issue where a late-coming peer (joining the game after the others have started) is unable to receive 'client update' trigger and/or set its client input state.

    - Everything works just fine if all the host/peers join at the same time

    - The late-comer peer is able to see the syncd movements of the other players

    - If I disable the 'on client update' trigger, the peer can locally set the setbits, but is still unable to 'send' this data to the peer via the 'set client input state'

    Any ideas what could be interfering with the 'client update' trigger but at the same time not interfering with the object sync?

    Tagged:

  • I'm still struggling with this one!!!!!

    Does anyone know of any reason why a peer joining a game late might not receive client updates? These peers are still able to send and receive messages, only the 'on client update' and 'set bit' stuff is broken. And, again, this is only for peers that join late.

  • Do you have a minimal project with the issue? Multiplayer projects are hard to debug even with the project, and next to impossible with just a description. There's just so many possibilities that could result in problems.

    Edit: For starters, a "client update" is not something that is received, but sent. Client updates happen every other tick at 60 fps. If you try to send any inputs or allow movement before the first client update happens, things can break. You can use the "is ready for input" condition for this. No idea if this is your problem without looking at the project though.

  • Hiya oosyrag! Thanks for the suggestion. I actually just added an 'input ready' condition today, but it didnt help.

    I totally understand that without a project its near impossible for y'all to help. I would send one, but to do so might break it even worse (since my game is games within games within games). I will keep at it and hopefully report back. If I still cant fix this one by the end of the week, then ill get to work on stripping it down into something that I can send to you in here.

    I was just hoping that someone else has run into this before and knows how to solve it. It's probably something stupid that im overlooking.

  • Since everything else works, I'm going to guess it's just a matter of the host not running the event/action to either create an object for the late joining peer, or associating the correct peerid to it. The peer client update and sending client state is likely working fine, and the host is just not applying it's inputs.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Since everything else works, I'm going to guess it's just a matter of the host not running the event/action to either create an object for the late joining peer, or associating the correct peerid to it. The peer client update and sending client state is likely working fine, and the host is just not applying it's inputs.

    Hey man! So, I gave up .__.

    I redid the multiplayer system and I still had this issue. I decided to just not allow players to join late. While I wish I didn't have to give up, honestly its not worth the stress staring at the same code for another week.

    oosyrag

  • I was working on a minimal multiplayer example for character selection and communicating peer ID outside of an 'on peer joined' trigger, and I remembered it might be relevant to this thread, since it does work for late joiners as well. Here's the link if you ever wanted to revisit this.

    dropbox.com/s/p3vwhjlfs7xlxmx/MP_LateJoin_CharacterSelect_Example.c3p

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)