0 Favourites

Is Multiplayer/online possible with Construct 2?

  • Hello everyone

    I read a lot about construct 2 from another company so i thought i would check it out and so far it looks very promising. But i have a few questions:

    Can multiplayer games be created? It states that Facebook games can be created as such and ios but are there any multiplayer, online features that can be used and what are they. Please explain in full thanks

    JonApp

  • Yes, using WebSocket and Socket.io, you might look up about these words on this forum, you need Node.JS installed on your server to get working.

  • In other words, it's possible, but a lot of effort - you'd probably need to code your own plugins and serverside.

  • Ashley

    If you ever decided to do a C2 version for game server / databases I'm sure people wouldn't mind paying for an additional license.

  • Please check this link:

    https://github.com/pubnub/pubnub-api/tree/master/construct2

    @dewanto

    What is it? Please explain.

  • It depends on the kind of game you want to create.

    If it's a real time game that is sensitive to latency, then no, it is not possible.

    This is not a construct problem, by the way, but a HTML5 problem. As of this post, it is impossible to create real-time multiplayer games over the internet (lan is possible) with any reliability.

  • Construct 3

    Buy Construct 3

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

    Buy Now Construct 3 users don't see these ads
  • a Construct Multiplayer Plugin using Pubnub.com

    Watch a demo game at :

    vimeo.com/38425656

  • a Construct Multiplayer Plugin using Pubnub.com

    Watch a demo game at : vimeo.com/38425656

    Not a multiplayer plugin or a multiplayer demo, I'm afraid. The demo is just of remote control of a sprite and the plugin simply allows client<->client communication. Real multiplayer online gaming requires interaction with an authoritative server to securely manage the game state/logic.

  • One of the hardest problems is like Velojet says you need an authoritative server to prevent cheating. However C2's architecture does not lend itself easily to that - even with a good WebSocket plugin (and even assuming it had UDP support) you might have to hand-code a server for your game, and multiplayer programming is pretty tricky on top of that.

    Given we have a community of people who are trying to avoid traditional programming, do you think that would still be useful at all? If you had to code a serverside? If so, we could still make some of the clientside plugins (like WebSocket) to provide official support for that. However we wouldn't be able to help much with writing serversides, it would probably be too complicated to write any kind of simple step-by-step tutorial for it.

  • We also should be able to have access to webRTC in Chrome/Firefox in spring of 2013.

    This will take care of the communication part, but will remove the authoritative server (or need for the client to check for the values of the opponent's client). In other words, cheat prevention in webRTC won't be "easy" at first.

    Nevertheless, depending on how you design your game, it's not necessary needed to check for it. In a not competitive coop game for example, there is less "reason"/meaning to be cheating.

  • ... This will take care of the communication part, but will remove the authoritative server (or need for the client to check for the values of the opponent's client). ...

    Maybe I'm missing something here, but I can't see how WebRTC "will remove the authoritative server". Doesn't it just remove the need for WebSockets (and/or AJAX)? Isn't there still a need for an authoritative server to mediate/manage game state/logic (not to mention cheating)?

  • ... Given we have a community of people who are trying to avoid traditional programming, do you think that would still be useful at all? If you had to code a serverside? If so, we could still make some of the clientside plugins (like WebSocket) to provide official support for that. ...

    @Ashley

    Those are excellent questions. It really is at odds with the (highly successful) philosophy/rationale of Construct 2 to ask the Scirra team to support what is necessarily traditional programming of a multiplayer game server. Best I think to leave it (as now) to enthusiasts to provide third-party socket plugins for the traditional server-side programmers amongst us to experiment with. (And as Kyatric says, it looks as though WebRTC is going to make those socket plugins redundant anyway.)

  • WebRTC doesn't change the picture much, it just means instead of connecting with WebSockets you connect with WebRTC. WebRTC should also bring UDP support though, so it's useful for that. Whichever one is used, you still need an authoritative server to connect to, because otherwise cheating will likely be rampant (especially in peer-to-peer games).

  • In networking in general, you have client side with a function to connect, and functions send/receive to exchange messages.

    It also means that you need to make a server that handles the connexion between the clients and is the source that receive the messages from the client and then broadcast it, as well as deal with the game's logic.

    The idea behind webRTC is that this server is "the webRTC service", a sort of "cloud" you don't touch upon, leaving you with nothing but the connect/send/receive to handle.

    You have little to no access to the server which only purpose is to deal with connecting clients (browsers) one to another and exchange messages between them.

    So yes, in the end, even with webRTC, a "gameplay" server will be required to be coded by the game maker, my mistake.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)
Similar Topics Posts Views Last Post
Unread hot topic Locked topic
0 Favourites
Construct 3 any news?
889 125,606
uzumiapps's avatar
uzumiapps
Unread hot topic
353 32,092
yojona's avatar
yojona
Unread hot topic
313 26,491
Juryiel's avatar
Juryiel