0 Favourites

Multiplayer Platformer Jump

  • Problem Description

    Jumping sometimes does not work on peer side, otherwise flawless on host side. Conditions seem almost totally random, though the jump seems more likely to bug again if you keep trying to jump directly after it bugs once.

    Attach a Capx

    drive.google.com/open?id=0ByPkS8Fkt5geYjEtZm9yNTQ0cVk

    Description of Capx

    CapX has the Multiplayer and Platformer functionality I currently use in my project. It's basically my project, stripped down to Multiplayer and movement events, then tested again to make sure the bug still occurs.

    Steps to Reproduce Bug

    • Step 1: Open two windows/tabs of the project in order to start the Multiplayer
    • Step 2: Go to the peer's client/whichever window or whatever is the peer and not the host.
    • Step 3: Hit W as quickly and rapidly as possible

    Observed Result

    Expected Result

    I expect jump to function normally as it should with the Platformer behavior.

    Affected Browsers

    • Chrome: YES
    • FireFox:
    • Internet Explorer:

    Operating System and Service Pack

    Windows 7 Ultimate 64-bit Service Pack 1

    Construct 2 Version ID

    Release 227 (64-bit/Steam)

    Link did not originally work because I tried to post a full link, and the forum does not yet allow me to do that since I'm new, so it blocked it.

  • I have also encountered similar problems caused by syncing platform behaviour using multiplayer. I was trying to figure a work around so I'm glad you've bug reported it.

  • sry but im at the moment to stupid to create a own post ._. (pls dear forum admin put me into the right place xD)

    i experimented with the scirra multiplayer exsample but the peer wouldnt connect... so i searched for alternatives and google play offers a multiplayer support! (so i dont need to buy a server)

    Question is how to implement multiplayer (for turnbased games) best at actual date?

    I remember that the google play plugin wasnt recommended some time ago ^^ has that changed yet?

    Greetings and thx

  • theelderlord - I am not a mod but I think I am able to tell you that your question is more suitable here :

    Post there and you'll get your reply sooner than here since this is a bug category of the forum, few volunteers explore here.

  • bayjfont Take a look at this post:

  • thx all

  • Problem here ^^ hope someone tryed it before me...

    I made a standalone win32 export that contains links (with the browser object) which look realy fancy ,but they miss the navi buttons!

    Is there a way to add buttons infron of the browser object window? thx in common !

    (maybe with execute javascript or something easyer?)

  • Problem here ^^ hope someone tryed it before me...

    I made a standalone win32 export that contains links (with the browser object) which look realy fancy ,but they miss the navi buttons!

    Is there a way to add buttons infron of the browser object window? thx in common !

    (maybe with execute javascript or something easyer?)

    theelderlord

    This post is not relevant to the OP. This section is for reporting C2 bugs, not asking questions.

    Please submit any questions in the relevant section, in this case, the C2 'How Do I' section.

    Thank you.

  • I can reproduce, it's definitely unreliable, especially if you add simulated latency.

    The input prediction algorithms don't seem to be very well suited to the platform behavior, and I think there's a bit of tug-of-war going on between the local platform behavior and the input prediction corrections conflicting with that. There's also the fact that client updates are only sent at ~30FPS but the game runs at 60 FPS (normally) so there's the chance the user can press jump and have it locally simulate, but it does not actually send a message to the host. That could possibly be fixed by events. However I tried myself and it didn't seem to fix everything.

    The timings are very sensitive when you do things like land a jump - input prediction will keep interpolating through the floor, whereas the platform behavior will collide with it and try to land on it. The arc of a jump is also non-linear. I guess it's really designed for top-down linear movement type games.

    I will look in to this further, but it looks like a pretty tricky area. I'm afraid I'm not sure I can give an ETA on when this can be improved to the point it is working smoothly. There could be multiple internal fixes necessary.

  • Hoping for fix on this also. There are some workarounds (), but it would be great to get native multiplayer and platform behavior work nicely together.

  • Hoping for fix on this also. There are some workarounds (), but it would be great to get native multiplayer and platform behavior work nicely together.

    Try adding local variables to track player input instead of applying the player input directly to the player objects.

    For example:

    If pressing left > platform move left

    instead try:

    if pressing left > set Player localvar to -1

    if pressing right > set Player localvar to 1

    if not pressing left & not pressing right > set Player localvar to 0

    if Player localvar = -1 > platform move left

    if Player localvar = 1 > platform move right

    It's more steps, but it's also a LOT less data to send for online multiplayer, since you're just checking on/off state when they occur instead of continuously.

  • digitalsoapbox That is pretty much what I am doing. I am saving inputs with setbit() method into inputs variable (just like in multiplayer tutorial 4), but not using the built-in input syncing and prediction, but syncing that variable and moving all players on each screen locally with same functions.

    Movement is smooth for everyone. I do occasionally (like on landings etc) sync positions and it is very rare to get any syncing glitches (something I can tweak of by syncing positions more often).

    Unfortunately my game has physics on bullets (or darts) and that is something I have to live with. It is still pretty great gameplay for all, but host has clear advantage (since all physics calculations are done on host). Probably will end up adding server there, so all players will be on same level.

    I watched Sombrero trailer - looks very cool! Pretty similar game than what I am building (I love that kind of 2D action games - will definitely buy Sombrero). Have to admit that you have much cooler graphics and without bullet physics it is much more suitable for online play! Is the release coming soon?

  • Construct 3

    Buy Construct 3

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

    Buy Now Construct 3 users don't see these ads
  • If somebody got a problem with Jump on Peer Side... try delete (Enable local prediction for Peer) this action if you are using it there:

    Example from default Template:

    Game (group)=>

    Peer (group) =>

    Peer On created (event / trigger) => ...some actions

    Peer.peerid = Multiplayer.MyID ( sub event ) => Multiplayer - Enable local prediction for Peer - TOGGLE THIS ACTION

    But this is not enough. Especially for mobile devices... On desktop little better

  • Stupid Sync = Absurd

  • Have there been any updates on this issue?

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