Search Unity

Facepunch.Steamworks Dev Log

Discussion in 'Multiplayer' started by MBrown42, Jan 29, 2020.

?

Interest in a potentially long running Dev Log of Unity + Facepunch.Steamworks?

  1. Yes

    98.3%
  2. No

    1.7%
  1. MBrown42

    MBrown42

    Joined:
    Jan 23, 2018
    Posts:
    86
    Hello - I was curious if there is interest in a development log as I embark upon a multiplayer game using Facepunch.Steamworks in Unity 2019.

    You can find the beginnings of test code for a client and server here: https://github.com/Facepunch/Facepunch.Steamworks/issues/349 along with some of my initial issues (development-wise, not emotional, we don't have all day :)).

    I solved the issue I brought up, if there is enough interest I can start or continue this thread as a true periodic long-term development log with code and results and such.

    As of now I've got a client and server that can connect via local LAN through Steamworks auth, accept players, and send input and update messages around. I am coming up to speed on lag compensation and all that, which I hope to get into sometime soon.

    One thing I did a little differently was use pure binary messages instead of those provided by FP or shown in the steamworks spacewar example. In this way the length of the byte[] array is reduced, for example, for over 600 to 25 for a player update, which can only help things out.

    Thanks for the time!
    Matt Brown, http://www.LifeStampGames.com
     
  2. Serellyn

    Serellyn

    Joined:
    Sep 30, 2011
    Posts:
    104
    It would really help me to have some kind of tutorial or example how to create/join and alter a lobby. I'm really struggling and can't get it working. Would love to see how you did it because their documentation lacks a lot of information. Thank you.
     
  3. Newbies-Unity

    Newbies-Unity

    Joined:
    Nov 19, 2015
    Posts:
    22
    H
    Hi, Can you help me answer some questions about Steamworks? Please!
    - How we create a server for 10 - 12 players. We just need to call the server function and set the values for it in client code like P2P, steam will do it for me or we need to hire a server then run steam server service and connect all client to this server with an IP?
    - Steamwork Multiplayer can use for android and ios game?
    Thank
     
  4. FakeByte

    FakeByte

    Joined:
    Dec 8, 2015
    Posts:
    147
    I you are fine with a player being the host then you can just let a client open a SteamSocket, either a normal socket (Connect with IP) or a relay socket (connect with steam ID). I would not suggest to use Steam P2P for this.

    Steamworks works only on Mac, Linux and Windows.
     
    Newbies-Unity likes this.
  5. Newbies-Unity

    Newbies-Unity

    Joined:
    Nov 19, 2015
    Posts:
    22
    Thank FakeByte, I really want to create a small game with 8 - 10 players in a room like "The Friday 13th". But only steam P2P is fine for an indie developer with no budget for hire a server. So is it good to create a game for 10 players with P2P function?
    - Do you know Among Us use what framework to make multiplayer between mobile and PC?
    Thank
     
  6. FakeByte

    FakeByte

    Joined:
    Dec 8, 2015
    Posts:
    147
    Steamworks P2P is steams old networking, their new one is SteamSockets, it works the same as the old P2P and won't cost you more, in fact it performs much better than the old P2P networking.

    I don't know which networking framework Among Us used.
     
    Newbies-Unity likes this.
  7. Newbies-Unity

    Newbies-Unity

    Joined:
    Nov 19, 2015
    Posts:
    22
    Thank you so much!
     
  8. bthomas2622

    bthomas2622

    Joined:
    May 8, 2019
    Posts:
    1
  9. FakeByte

    FakeByte

    Joined:
    Dec 8, 2015
    Posts:
    147
    You are still using the old steam networking API, if you just started then I recommend to switch over to the new networking API and use Steam Sockets