1. Hey! Guest! The 35th GMC Jam will take place between November 28th, 12:00 UTC - December 2nd, 12:00 UTC. Why not join in! Click here to find out more!
    Dismiss Notice

Distribution Online co-op without networking?

Discussion in 'Game Design, Development And Publishing' started by MilesThatch, Oct 11, 2019.

  1. MilesThatch

    MilesThatch Member

    Joined:
    Jul 12, 2016
    Posts:
    423
    Good day, everyone.

    So steam just dropped something interesting and I wanted to talk about the possibilities this could open up. Especially if other distribution platforms follow suit. This could potentially save tons of labor but for now, if this works, this would lock you to steam platform. What do you think? I'm kinda interested in trying it out. Making a game specifically designed to be played using this feature.

     
    Last edited: Oct 11, 2019
    Seabass (The Human) and Nocturne like this.
  2. HayManMarc

    HayManMarc Member

    Joined:
    Jun 21, 2016
    Posts:
    925
    If you had GMS on steam, could you open it up, invite a friend, and work on a project together, at the same time?
     
    Yal and sitebender like this.
  3. Desert Dog

    Desert Dog Member

    Joined:
    Jul 30, 2019
    Posts:
    40
    Would be good if there was a link to some kind of official release, or at least some kind of text summary so I can read about it, rather than watch a 13 minute video. :)
     
    DaMuffin, rIKmAN and Toque like this.
  4. sitebender

    sitebender Member

    Joined:
    Sep 13, 2016
    Posts:
    835
    Are we allowed to talk about SteamWorks stuff in public? There's usually an non disclosure agreement with SteamWorks stuff.
     
  5. GMWolf

    GMWolf aka fel666

    Joined:
    Jun 21, 2016
    Posts:
    3,464
    It's remote play, but with multiple client computers connecting to the same game.

    It's cool but with consumer hardware it will be tough to get low latency.
    I think it'll work great for slower paced games or perhaps party games.
     
    Desert Dog likes this.
  6. rIKmAN

    rIKmAN Member

    Joined:
    Sep 6, 2016
    Posts:
    4,661
    It was announced on Steamworks apparently, but there are articles about it:
     
    Desert Dog likes this.
  7. MishMash

    MishMash Member

    Joined:
    Jun 20, 2016
    Posts:
    379
    Never a huge fan of increases in technology to cut out more efficient engineering solutions. I guess its cool for retro games/older games made before networking was commonplace, but wouldn't ever advocate developers to rely on the existence of such technology. At the end of the day, the principles with how networking "should" work are very much in line with how a system like this works. Secondary players just receive a snapshot of the game state and send over their inputs, while the "main" server just shares state. Using streaming for such a thing is just horrendously overkill and it won't provide as great of an experience, much higher bandwidth requirements and thus a potential for increased latency (I know that there wouldn't necessarily be any higher latency, but the increased network demands can result in it, especially if its going via a third server, rather than pier to pier).
     
    matharoo and Roa like this.
  8. GMWolf

    GMWolf aka fel666

    Joined:
    Jun 21, 2016
    Posts:
    3,464
    Something that would be cool would be to take snapshots ofthe graphics command and stream that to the other player, then they could render it with a generic app, without having the game.
     
  9. MishMash

    MishMash Member

    Joined:
    Jun 20, 2016
    Posts:
    379
    Funnily enough, Valve are also working on something similar to this :) It's called Fossilize, and is sort of an API tracing/replay library -- not initially targetted at game API streaming, but rather capturing and replaying API calls, initially for the purposes of offline shader compilation. However, could likely be extended to graphics API state streaming. https://github.com/ValveSoftware/Fossilize
     
    MilesThatch and GMWolf like this.
  10. MilesThatch

    MilesThatch Member

    Joined:
    Jul 12, 2016
    Posts:
    423
    This isn't really SteamWorks though. This was a public email.

    I agree the concept of my proposal here is quite out there. And yeah as @MishMash mentioned. Nothing beats well written netcode. Maybe as a proof of concept we can try making a few tech demons specifically catered for this particular feature, just to test the waters. Considering this tool, according to Valve, can connect multiple clients, each one showing up as a virtual controller on a hosts machine, you actually could make a local multi-player coop experience, so I wonder.

    @Desert Dog The email covered is about 3 minutes long, the rest of the video are my opinions on the possibilities and some brief reminiscence of the past of co-op.
     
  11. YellowAfterlife

    YellowAfterlife ᴏɴʟɪɴᴇ ᴍᴜʟᴛɪᴘʟᴀʏᴇʀ Forum Staff Moderator

    Joined:
    Apr 21, 2016
    Posts:
    2,430
    I do not think this will change much - by their quoted system requirements you can tell that it's a video stream based solution, and we've seen these come and go plenty of times now - Parsec, NVIDIA GameStream Coop, Moonlight, and Rainway are the current surviving contenders.

    The issue with these is that they are inherently unfit for versus games, as the host has zero input latency while the client has (round-trip-time + video encoding time + video decoding time) input latency.

    I have been trying my hand at a lockstep-based solution for GameMaker specifically, which offers a fair split of latency, but even then your options with lag compensation/client-side prediction are limited, and doing this in an engine-agnostic manner is fairly unrealistic due to the vast variety of ways input polling, file access, and other operations can be implemented.
     
  12. MilesThatch

    MilesThatch Member

    Joined:
    Jul 12, 2016
    Posts:
    423
    Naturally most of devs would be skeptical. We could run a benchmark on the latency.
     

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice