Examples: diablo 4 on blizzard client will let you play it before the full game is installed. The ps5 also let’s you do this when installing a new game. But I’ve never seen this option on steam games.

  • cerement@slrpnk.net
    link
    fedilink
    arrow-up
    58
    ·
    1 year ago
    • the launcher starts with updating itself and grabbing the most recent file manifest
    • launcher then prioritizes the game engine itself before starting on the data files
    • data files (textures, models, maps, etc.) are then prioritized by what the developer thinks you are most likely to encounter first (ie. starter towns, main cities, new content, etc.)
    • once the game engine is ready and some certain amount of base data is downloaded, the game will be marked as playable
    • most likely you will never notice anything but if you zone into an area where the data hasn’t been downloaded yet then you’ll get some lag and texture flickering as the game tries to shove that content to the front of the queue
    • RvTV95XBeo@sh.itjust.works
      link
      fedilink
      arrow-up
      26
      ·
      1 year ago

      Diablo also leans heavily into cinematic cut scenes which can be streamed (at lower resolution) if you encounter those before they finish downloading

      And low resolution textures / compressed audio can be downloaded first while you wait for the higher resolution content

  • Dark Arc@social.packetloss.gg
    link
    fedilink
    English
    arrow-up
    9
    ·
    1 year ago

    It’s worth noting … RuneScape has done this for decades 🙂

    You would basically have to write your engine to be friendly to the idea that an asset isn’t complete, and set up a non-complete (possibly absent or just low quality) and complete state.

    You download everything to the point where it’s suitably non-complete… Then you keep downloading things in the background to complete the install, prioritizing things the player is likely to or is encountering.

    • WeebLife@lemmy.worldOP
      link
      fedilink
      arrow-up
      3
      ·
      1 year ago

      Oh really? I’ve never played runescape, but that’s interesting that this feature has been around longer than I realized.

      • Dark Arc@social.packetloss.gg
        link
        fedilink
        English
        arrow-up
        5
        ·
        1 year ago

        Yup! They might be the first game that became large scale to do it honestly. Because their game was getting quite big but they were a Java applet they (speculating a bit) wanted to maintain the fast load times as they added more and more content and get new players into the game quickly.

        Plenty of innovation out of Jagex back in the day (sadly not so much now). The founders sold their shares and left the company, the founding programmer started a company where he’s been working on a new game engine concept that’s supposed to make multiplayer as easy as single player to program for, I try my best to keep an eye on it (https://www.fenresearch.com/).

  • AChiTenshi@sh.itjust.works
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    It will depend on how the game is packaged. On your two examples that let you play before finishing download the clients will have multiple downloads that will prioritize everything needed to play early content. This will allow you to play for a bit and by the time you are far enough into the game the rest should have downloaded.

    I am not entirely sure how steam manages downloads but I suspect it compresses the whole game as a single download and decompresses and installs it once the download is done. This would mean that nothing is playable until the entire game has been downloaded. It’s something they could potentially change with their download process but not many developers would take advantage of it so it’s likely a low priority thing.