Multiplayer Host Switching in Construct 3?

  • There are two types of gaming:

    1.Single Player 2.Multiplayer

    We can make multiplayer games in Construct 3 with the help of multiplayer plugin, right?...

    But currently, if the Host leaves a game then there is no host switching which makes all players kicked out of room.

    This can work in a 2 player game as the other person could be crowned winner if one leaves. But in (multi) multiplayer other players will get kicked out because of one player(host) leaving, that could be whenever he is losing the game.

    This limits us making a real multiplayer game as their is no meaning of making a multiplayer game which runs as wish of the player hosting game.(at least not a serious game)

    This can only be solved by host switching feature, with this feature c3 can say it can truly make a multiplayer game.

    So i Want to ask, Are there any plans to implement Host Switching feature?

  • IIRC host migration can already be done, I remember seeing a template for it somewhere.

    But host migration is a clunky and lossy process, regardless the platform you are developing on. This is why commercial games pretty much all use dedicated hosts instead, which you can

    (and should) already do with the existing plugin as is, rather than try to build and rely on a host migration system.

    The multiplayer plugin is probably the lowest priority to be updated so I wouldn't hold my breath waiting for it. It actually has quite a lot more functionality than people give it credit for, high expectations aside. The understanding of core multiplayer networking principles is the hard part .

  • oosyrag i saw a post where ashley explained it as a complex process to implement,

    but C3 being a No Coding Required 2D Game Engine itself suggests that most game developers using it do not know coding or setting up a server, let alone code it for host migration(complex process as said).

    Being said that, Isn't it important for C3 to provide this as a feature?...

  • Multiplayer is one of the most complicated features - even making small changes can be very difficult, and it's particularly time-consuming to test. Host migration in particular is extremely complicated - it would have to transmit the entire state of the game to a different peer, and then your events would be super complicated too, as you have to switch over the new host from peer mode to host mode, switch over all other peers to recognise a new host, and if at any point you get it wrong things will go haywire, and you'll face similar issues with the high complexity of multiplayer logic and the very time consuming and difficult issues that come up in testing. (For example a typical issue would be: about 1 out of 10 times in host migration, you end up with the wrong groups activated and the game doesn't work, and it's an absolute nightmare trying to figure out why.)

    I think the main issue with the Multiplayer object in Construct is the forbidding complexity of multiplayer logic is generally a poor fit for a simple, no-coding tool that generally attracts non-technical users. You have to think about multiple copies of the game all running simultaneously, but all on slightly different time delays, with an authoritative host and thin-client peers running various kinds of prediction to hide lag. It's a lot to ask for people who are new to all this. On top of that we are a tiny team (we have just 3 developers, and some competitors have dozens or even hundreds), and it is such hard work to develop multiplayer features that it carries an enormous opportunity cost as we'd basically have to cancel a bunch of other feature requests to do even one multiplayer update. So in the end working on multiplayer is a low priority. As it stands though it's still pretty good for small casual games without needing to set up any infrastructure, which I think is a decent fit for the type of tool Construct is.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I understand the limitations of your team, And i appreciate the good work done with c3, i woudnt have been able to do what i love without construct at an affordable price and progressive updates, i hope it stays this way.

    Although i think event setup like activating host group when player is host and peer group otherwise would be doable by users (assuming the plugin would automatically set the new host id for all peers and mutiplayer is already complex for new users anyway)

    and i hope that c3 grows fast and successfully and you will be able to implement it sometime later.

  • I think you're missing the point. Host migration is not a good solution - it is a bad design choice even for commercial games. Build your game with with a non-participating dedicated host instead.

  • oosyrag i get it!

    But little construct team is one of the major reason for it too, look... "default functions" was a big step in construct and seemed very hard and complex to do like "timeline feature" and an "inbuilt exporter" which were just said to be very difficult to implement and drawbacks were counted too, but with time and hard work it happened! i just like to believe that with growing construct (with right subscription model) will be a bigger team someday and this issue will be sorted in a way or the other.

    Hoping is not the worst thing to do!

  • you can ask the experts for help (like me !!! )

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