Does the client need a listening port?

So, I’m looking here at the Basic Network Example. Seems simple, at first, the objects just send their position to each other. In a game with more than two players, the most common possibility would be to make a server which would take the data from all clients and redistribute it.

I’m no expert in that kind of thing, but AFAIK usually only the server needs an open, listening port to connect. And in that example, there doesn’t seem to have a difference, both client and server need an open port. That could be a problem, as my ISP blocks incoming connections…

(I might have made a small terminology confusion, but you can understand what I said, right?)

Sorry, I was a bit busy by the new beta version of Game Develop and I’ve forgotten your message :slight_smile:

In fact, both computers need a listening port, as the server and the client need to send information, but they also both need to receive information :slight_smile:
Even if the server is making more work or managing the whole game, the client need to send information ( The actions made by the player for example ) and it need to listen to the information send by the server ( The state of the game ).

The network extension does not force you to use any pre-existing scheme for creating a game, you can create a server/client based game as described above, or you can make as in the Basic Network example where both computers send the same quantity of informations.
Whatever you decide to do, as soon as you send information over the network, you need a listening port to get a response : I do not think that your ISP is blocking some ports, it would be rather stange.


Hm, okay, it’s obvious that both client and server send and receive information. And yes, the Network Extension seems flexible, looks like I could make a P2P game with it!

But my ISP does block incoming connections, it even says so in the contract. Not incoming traffic, just incoming connections. I can play online games, but I can never host a server. Damn, I even tried hiding it under a P2P VPN, to no avail.

Here’s what I know about client/server communications, correct me if I’m wrong. The server machine has an open port, and the server program is listening to that port. Then the client comes and establishes a connection. I don’t know if any ports are automatically opened after that, but the point is that, initially, only the server needs an open port. Is there a way to accomplish this in GD?

If not, it’s not such a big problem, as I’m already coming up with ideas to make my game local multiplayer.

I’m must admit I am not an expert in this field, but the data won’t be able to be received if all the ports are blocked ( Default ports are surely not block by your ISP, but they are used by other applications ) : Normally, even the client need to open a port to listen to the data that are coming… It is how it is done currently in Game Develop at least :neutral_face:

So for now, you’ll have to find another solution ( Did you try Hamachi? )

Meh, it’s okay. Imma go local local multiplayer, it’s more my style anyway.

I never tried Hamachi, as it doesn’t have Linux support anymore. But I tried N2N and SocialVPN. In both, I could ping the other machine a be pinged, but I couldn’t host a server.