Multiple clients from same IP are not able to join "lan client's server"

Multiple clients from same IP are not able to join "lan client's server"

Anonymous
Not applicable
1,993 Views
16 Replies
Message 1 of 17

Multiple clients from same IP are not able to join "lan client's server"

Anonymous
Not applicable

Hey all,

I am using the lan client networking approach and all works great with multiplayer but I noticed when multiple people from the same ip, either within my network or over wan that I am not able to have multiple clients with the same ip in the game.  After the first player connects, the later players cannot get any "reliable messages" to reach the server. I am also using the "peer-to-peer" approach.

 

Has anyone experienced this?

 

Background:

I am trying to get to a point where I am productionalized, it seems the only way to over come this is to use the SteamClient? I don't understand how the Steam Client can work around this but the Lan Client does not.  This is somewhat a major road blocker being an Indie dev that I will likely have to waste time/resources to overcome.  If I cannot test as multiple clients from my house then how can I make a good multiplayer game?

Reply
Reply
0 Likes
Accepted solutions (1)
1,994 Views
16 Replies
Replies (16)
Message 2 of 17

dave.tyner
Alumni
Alumni

Hi Sivx, 

 

I've been reading many of your posts recently and it seems you are a bit further down the multiplayer road than I am. I'm able to connect multiple LAN clients (3) to a local multiplayer server using the ootb Network example in the testbed project in 1.7. What version are you testing on?

Reply
Reply
0 Likes
Message 3 of 17

Anonymous
Not applicable

Hello,

I am using v1.6, I thought I was on the latest. How did you get 1.7 access? https://knowledge.autodesk.com/support/stingray/downloads I am fairly certain am on the latest public version.  I am not able to have multiple LAN/WAN clients when they are originating from the same IP.  WAN and LAN both work the same so I dont know why they didnt just call it something else.  

Reply
Reply
0 Likes
Message 4 of 17

niklas.frykholm
Alumni
Alumni

This is not supported by the LAN client. That is why it is called the "LAN client" -- it only works on LANs.

 

In a WAN setup, there is no reliable way to connect between computers behind NATs without having some kind of external server doing "matchmaking" (i.e. handling NAT punchthrough between the clients). Currently we only support doing this through Steam.

 

An alternative solution you might want to look into if using Steam is not an option is to look into tools such as Hamachi that allow you to "emulate" a LAN over a WAN.

Reply
Reply
Message 5 of 17

Anonymous
Not applicable
Hey Niklas,
Thanks for the reply. I have talked with _robbs_ in the past https://forums.autodesk.com/t5/stingray-forum/networking/td-p/5778613/page/2?device-view=desktop and his understanding was lan and wan work the same. I currently have a dedicated server which is on azure and can connect many clients to it over WAN with only port forwarding turned on. I am having issues when multiple players from the same house/ip want to play that only the first connection works.
Reply
Reply
0 Likes
Message 6 of 17

Anonymous
Not applicable
Also for clarity, i intend on using steam client but you have to be green lit before using their api. Would you know if there is a way around it without being green lit?
Reply
Reply
Message 7 of 17

Anonymous
Not applicable
Hey Niklas,
Are you as surprised as I am that "LanClient" doesnt just work on LANs. I would call this poor naming that's confusing. Should be corrected? Any advice would go a long way with my other replies before my weekend grind hits. Thanks!!
Reply
Reply
0 Likes
Message 8 of 17

bruno_xavier_
Participant
Participant

You do NOT need to be greenlit to use Steam API.

Anybody can develop for Steam using public AppID 480.

Reply
Reply
Message 9 of 17

Anonymous
Not applicable

Wha?! That is crazy. I am testing this as soon as I can code it.  Is there any supporting documentation you can link me? 

Reply
Reply
0 Likes
Message 10 of 17

dan.matlack
Alumni
Alumni

@Anonymous feel free to hit me up on skype any time you like and let's see if we can help you out with your project 🙂 skype = danmatlack

______________________________________
Dan Matlack
Senior Content Manager || Games Solutions
Autodesk, Inc.
Reply
Reply
0 Likes
Message 11 of 17

bruno_xavier_
Participant
Participant
Accepted solution

You cannot access Steamworks or its docs if you are not a Steam developer yet, but if you already know the API then you don't have to wait for Valve to give you an AppID, can simply use their demo app 480 to implement Steam SDK in your code early.

If you don't know the API and also can't have access to the Steamworks portal to read its docs then you've got a problem yep.

Reply
Reply
0 Likes
Message 12 of 17

Anonymous
Not applicable
I hope I am not the only one to be frustrated by not seeing this in any of the stingray documentation. The whole time ive been wanting to use the steam client but didnt know I could use appid 480.
Reply
Reply
0 Likes
Message 13 of 17

Anonymous
Not applicable

Hey all,

Where should the steam_appid.txt go when using the editor?

Thanks,

Dan

Reply
Reply
0 Likes
Message 14 of 17

Anonymous
Not applicable

Do you know where the steam_appid.txt needs to be when using the editor?

Reply
Reply
0 Likes
Message 15 of 17

Anonymous
Not applicable

Nevermind, needs to be located literally in the engine's folder.

ex. 

C:\Program Files\Autodesk\Stingray\1.6.1011.0\engine\win32\dev\steam_appid.txt 

and/or

C:\Program Files\Autodesk\Stingray\1.6.1011.0\engine\win64\dev\steam_appid.txt 

and/or

C:\Program Files\Autodesk\Stingray\1.6.1011.0\engine\win32\release\steam_appid.txt 

and/or

C:\Program Files\Autodesk\Stingray\1.6.1011.0\engine\win64\release\steam_appid.txt 

 

Inside the file I just put 480.

 

Thanks

Reply
Reply
0 Likes
Message 16 of 17

Anonymous
Not applicable

Hey Niklas,

I am using the Steam client and I am still facing the same issue. The server is using init_steam_server and the client is using init_steam_client.  Again, I am able to connect multiple users to the server from different IPs but when the clients have the same source IP only the first one makes it. Do you have any insight as to why this might be and what I can try to do to work around it? 

I just started wireshark tests and will be working on that throughout the weekend.  I was able to connect multiple users with the same IP to the server when I changed the GamePort to be different from what the other client was using.  Although, the two clients weren't sending information between eachother so essentially could not play together.  

 

Thanks!

Dan

Reply
Reply
0 Likes
Message 17 of 17

Anonymous
Not applicable

Hey Bruno,

Do you have experience in working with the SteamClient? I was able to get a working example using steam and that ID.  But again the same problems occurred in which I could not get the second client within the same IP into the game.  I will be wiresharking to get a full detailed analysis from the client/server to provide.

Reply
Reply
0 Likes