• FeelzGoodMan420@eviltoast.org
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 years ago

        Most games never hit anywhere near that, but some large open world rpgs like Skyrim track the location of every single object in the game world. Like you can drop a piece of cheese on the bottom left corner of the map, come back 500 hours later, and it’ll still be there. now imagine all of the objects you’re buying and selling and manipulating over those hundreds of hours. Now add in a shit ton of script mods and other stuff that may add even more objects. And add in all of the quest data and interaction data that gets saved etc etc, and your save file can easily hit multiple gigabytes, with each file approaching 200mb.

          • vithigar@lemmy.ca
            link
            fedilink
            English
            arrow-up
            0
            ·
            2 years ago

            Bold of you to assume the data in save files is packed binary and not something like JSON where { “x”: 13872, “y”: -17312, “z”: -20170 } requires 40 bytes of storage.

            • addie@feddit.uk
              link
              fedilink
              English
              arrow-up
              0
              ·
              2 years ago

              Agreed. JSON solves:

              • the ‘versioning’ problem, where the data fields change after an update. That’s a nightmare on packed binary; need to write so much code to handle it.
              • makes debugging persistence issues easy for developers
              • very fast libraries exist for reading and writing it
              • actually compresses pretty damn well; you can pass the compress + write to a background thread once you’ve done the fast serialisation, anyway.

              For saving games, JSON+gzip is such a good combination that I’d probably never consider anything else.

          • wax@feddit.nu
            link
            fedilink
            English
            arrow-up
            0
            ·
            2 years ago

            Each object also needs the orientation, possibly also velocity and angular rates.

          • tehevilone@lemmy.world
            link
            fedilink
            English
            arrow-up
            0
            ·
            2 years ago

            Save bloat is more often related to excess values not being properly discarded by the engine, if I remember right. So it’s not that the objects themselves take up a lot of space, but the leftover data gets baked into the save and can end up multiplying if the same scripts/references/functions get called frequently.

            It was a lot worse with Skyrim’s original engine, and got better in Fallout 4 and Skyrim SE. The worst bloat happens with heavy modlists, of course, as they’re most likely to have poor data management in some mod.