rmakagon: The random local port selecting is a normal thing. We select the port that is free to use at the moment you want to go multiplayer. This behavior is common among all multiplayer platforms and we are no different in this area.
Regards
skeletonbow: Yes, for the local port that is true on the majority of network software apps, games etc. to let the OS pick an ephemeral return port and that's not a problem of course. The problem I'm seeing is that the game appears to be choosing an ephemeral listen port also to listen for incoming connections. Is it advertising that random listen port to GOG's Galaxy servers then passing it along to other clients? Just trying to understand how this is set up to work so that it will work properly through a router doing NAT that has a default firewall policy of deny both incoming and outgoing, ie: what port should be allowed outbound, and what if any ports should be port-forwarded that are inbound in order to be able to both join a multiplayer game (that's working now), and also to host one.
Normally games bind to a static local port. For example Starcraft by default listens on UDP port 6112 always (can be configured via the Windows registry if need be), and you set up port forwarding on your router to forward UDP port 6112 through to the machine the game is running on. Battle.NET servers also run on port 6112 (TCP/UDP) and you poke a hole in your outbound firewall rules on the router for those ports. On the Windows firewall side on the game computer you allow those ports in and out.
I'm trying to understand the same process for The Witcher Adventure, along with the Galaxy stuff and I've determined what ports Galaxy needs, but the game appears to choose a random listen port if I'm understanding what I'm seeing correctly, and I'm seeing inbound traffic on the router's firewall logs which are in the NEW state, meaning they're not return traffic, but appear to be inbound attempts to connect on random UDP ports.
I'm just trying to understand what the appropriate ports are to allow through the firewall both inbound and outbound for the game to work properly. Normally with any games this is anywhere from 1 to 5 or so ports depending on the various things going on and in some cases a range of 10 ports a game selects at random for multiple machines behind NAT to all work simultaneously (such as Battle for Middle Earth II).
If you could clearly indicate what specific ports need to be allowed through the firewall (inbound and outbound) both on the Windows client computer and router, and what ports need to be port forwarded on the router to the Windows client machine for both incoming and outgoing games to work I'd really appreciate that. If the game is trying to use any form of NAT puncture to try to automate poking through a router's firewall and you could share those details I'd appreciate that as well.
I've got a strong firewall setup here and I'm able to get every game I've played in 20 years to work through it in both directions with strict inbound and outbound blocking by default, so I'm hoping I'll be able to do it with this game as well. I realize this is a probably a request of a lot more technical nature than the average person is likely to ask for, but well.. I'm an engineer myself and technical in nature so... I must ask. :) I wont compromise my local network security by opening the firewall wide open just for one game though, so I hope the game doesn't expect all UDP ports to be left open to use liberally through the firewall (which blocks them all by default until I allow them one at a time etc.), as if that turns out to be the case and there is no way to configure around it I'm afraid I wont be able to participate in initiating multiplayer games for this one game. I'll certainly continue to join other people's games though.
Sorry if I'm "that one guy..." but well... I am. :)
As my colegue said previously, we use random ports, which is common to all advanced multiplayer platforms. We do use NAT punch-through, yet we do not rely on it. The minimum requirement is that you allow the game to initiate HTTPS connections and UDP communication. The same is for both creating and joining lobbies: there is no difference in communication requirements.
Since as you said you can easily join lobbies, I suppose that the issues you are facing are related with the bug in Unity that I told you about previously. As I said, we are working on a work around for that issue.
To anyone that is facing the same or similar issues I would like to say sorry and assure you, that we are investigating these issues and working on solutions for them.
Regards.