Helldivers 2 devs slash install size from 154GB to 23GB
75 points
1 hour ago
| 9 comments
| tomshardware.com
| HN
snet0
33 minutes ago
[-]
> With their latest data measurements specific to the game, the developers have confirmed the small number of players (11% last week) using mechanical hard drives will witness mission load times increase by only a few seconds in worst cases. Additionally, the post reads, “the majority of the loading time in Helldivers 2 is due to level-generation rather than asset loading. This level generation happens in parallel with loading assets from the disk and so is the main determining factor of the loading time.”

It seems bizarre to me that they'd have accepted such a high cost (150GB+ installation size!) without entirely verifying that it was necessary!

I expect it's a story that'll never get told in enough detail to satisfy curiosity, but it certainly seems strange from the outside for this optimisation to be both possible and acceptable.

reply
PoignardAzur
26 minutes ago
[-]
I don't find it surprising at all. A ton of developers do optimizations based on vibes and very rarely check if they're actually getting a real benefit from it.
reply
bombcar
9 minutes ago
[-]
This is the moral behind "premature optimization is the root of all evil" - you could say preconceived just as easily.
reply
deng
12 minutes ago
[-]
11% still play HD2 with a spinning drive? I would've never guessed that. There's probably some vicious circle thing going on: because the install size is so big, people need to install it on their secondary, spinning drive...
reply
amlib
2 minutes ago
[-]
Even though I have two SSDs in my main machine I still use a hard drive as an overflow for games that I judge are not SSD worthy.

Because it's a recent 20TB HDD it has read speeds that approach 250MB/s and I've also specifically partitioned it at the beginning of the disk just for games so that it can sustain those 250MB/s without files falling into the slower tracks. It's honestly fine for the vast majority of games.

reply
jsheard
27 minutes ago
[-]
From a business perspective the disk footprint only a high cost if it results in fewer sales, which I doubt it does to any significant degree. It is wasteful, but can see why optimization efforts would get focused elsewhere.
reply
bombcar
8 minutes ago
[-]
Given how many Steam games are bought but never even installed, it would seem not terribly worth optimizing for.

On phone, I bet you see some more effort.

reply
code_for_monkey
25 minutes ago
[-]
I think certain games dont even bother to optimize the install size so that you cant fit other games on the hard drive, I think COD games are regularly hundreds of gigs
reply
KeplerBoy
18 minutes ago
[-]
Having a humongous game might be a competitive advantage in the era of live-service games.

Users might be more hesitant to switch to another game if it means uninstalling yours and reinstalling is a big pain in the backside due to long download times.

reply
snet0
20 minutes ago
[-]
I've often seen people mention that one reason for games like Call of Duty being so enormous is optimising for performance over storage. You'd rather decompress textures/audio files at install-time rather than during run-time, because you download/install so infrequently.
reply
Ekaros
25 minutes ago
[-]
Also the cost is often offloaded to the "greedy" Valve... So there is less pressure to optimize their own CDN use.
reply
jsheard
9 minutes ago
[-]
Yeah, I don't think any of the stores charge developers in proportion to how much bandwidth they use. If that changed then the priorities could shift pretty quickly.
reply
nerdjon
19 minutes ago
[-]
High cost to who though. We see the same thing when it comes to RAM and CPU usage, the developer is not the one paying for the hardware and many gamers have shown that they will spend money on hardware to play a game they want.

Sure they may loose some sales but I have never seen many numbers on how much it really impacted sales.

Also on the disk side, I can't say I have ever looked at how much space is required for a game before buying it. If I need to clear out some stuff I will. Especially with it not being uncommon for a game to be in the 100gb realm already.

That all being said, I am actually surprised by the 11% using mechanical hard drives. I figured that NVME would be a lower percentage and many are using SSD's... but I figured the percent with machines capable of running modern games in the first place with mechanical drives would be far lower.

I do wonder how long it will be until we see games just saying they are not compatible with mechanical drives.

reply
onli
7 minutes ago
[-]
That already happened :) Starfield claimed to not support HDDs and really ran bad with them. And I think I saw SSDs as requirement for a few other games now, in the requirement listings on steam.
reply
aeve890
12 minutes ago
[-]
>It seems bizarre to me that they'd have accepted such a high cost (150GB+ installation size!) without entirely verifying that it was necessary!

You should look at COD install sizes and almost weekly ridiculously huge "updates". 150gb for a first install is almost generous considering most AAA games.

reply
fleabitdev
17 minutes ago
[-]
Back of the envelope, in the two years since the game was released, this single bug has wasted at least US$10,000,000 of hardware resources. That's a conservative estimate (20% of people who own the game keep it installed, the marginal cost of wasted SSD storage in a gaming PC is US$2.50 per TB per month, the install base grew linearly over time), so the true number is probably several times higher.

In other words, the game studio externalised an eight-figure hardware cost onto their users, to avoid a five-to-six-figure engineering cost on their side.

Data duplication can't just be banned by Steam, because it's a legitimate optimisation in some cases. The only safeguard against this sort of waste is a company culture which values software quality. I'm glad the developers fixed this bug, but it should never have been released to users in the first place.

reply
miohtama
6 minutes ago
[-]
AFAIK Helldivers 2 runs some really old engine which was discontinued many years ago. Not "state of the art."

It's also a title that shows you can have a really good game without the latest tech.

reply
rincebrain
44 minutes ago
[-]
I've been really curious precisely what changed, and what sort of optimization might have been involved here.

Because offhand, I know you could do things like cute optimizations of redundant data to minimize seek time on optical media, but with HDDs, you get no promises about layout to optimize around...

The only thing I can think of is if it was literally something as inane as checking the "store deduplicated by hash" option in the build, on a tree with copies of assets scattered everywhere, and it was just nobody had ever checked if the fear around the option was based on outcomes.

(I know they said in the original blog post that it was based around fears of client performance impact, but the whole reason I'm staring at that is that if it's just a deduplication table at storage time, the client shouldn't...care? It's not writing to the game data archives, it's just looking stuff up either way...)

reply
alias_neo
35 minutes ago
[-]
I'm not entirely clear what you're trying to say, but, my understanding is that they simply put lots of copies of files in lots of places like games have done for a long time, in the hopes it would lower seek times on HDDs for those players who use them.

They realised, after a lot of players asking, that it wasn't necessary, and probably had less of an impact than they thought.

They removed the duplicates, and drastically cut the install size. I updated last night, and the update alone was larger than the entire game after this deduplication run, so I'll be opting in to the Beta ASAP.

It's been almost a decade since I ran spinning rust in a desktop, and while I admire their efforts to support shitty hardware, who's playing this on a machine good enough to play but can't afford £60 for a basic SSD for their game storage?

reply
eska
22 minutes ago
[-]
HDDs also have a spinning medium and a read head , so the optimization is similar to optical media like CDs.

Let’s say you have UI textures that you always need, common player models and textures, the battle music, but world geometry and monsters change per stage. Create an archive file (pak, wad, …) for each stage, duplicating UI, player and battle music assets into each archive. This makes it so that you fully utilize HDD pages (some small config file won’t fill 4kb filesystem pages or even the smaller disk sectors). All the data of one stage will be read into disk cache in one fell swoop as well.

On optical media like CDs one would even put some data closer to the middle or on the outer edge of the disc because the reading speed is different due to the linear velocity.

This is an optimization for bandwidth at the cost of size (which often wasn’t a problem because the medium wasn’t filled anyway)

reply
swiftcoder
4 minutes ago
[-]
> HDDs also have a spinning medium and a read head , so the optimization is similar to optical media like CDs.

HDDs also have to real with fragmentation, I wonder what the odds that you get to write 150 GBs (and then regular updates in the 30GB range) without breaking it into fragments...

reply
geerlingguy
34 minutes ago
[-]
Possibly a similar process to when you go into an AWS account, and find dozens of orphaned VMs, a few thousand orphaned disk volumes, etc., saving like $10k/month just deleting unused resources.
reply
alias_neo
31 minutes ago
[-]
We've all been there Jeff.

In this case, I don't think it was forgetfulness; unlike us, they have an excuse and they were trying to optimise for disk seek times.

Anyway, I've got a half-dozen cloud accounts I need to go check for unused resources waves.

reply
easyThrowaway
1 hour ago
[-]
Did the duplicated files were even used on pc? Like, do you even have such low access to the file system that you can deduce which duplicated instance has a faster access time on a mechanical hard drive?
reply
tehbeard
32 minutes ago
[-]
It's not which duplicated instance....

Think of it as I have two packs for levels.

Creek.level and roboplanet.level

Both use the cyborg enemies, by duplicating the cyborg enemy model and texture data across both files, Only the level file needs to be opened to get all nessecary data for a match.

Because modern OS will allow you to preallocate contiguous segments and have auto defrag, you can have it read this level file at max speed, rather than having to stop and seek to go find cyborg.model file because it was referenced by the spawn pool. Engine limitations may prevent other optimisations you think up as a thought exercise after reading this.

It's similar to how crash bandicoot packed their level data to handle the slow speed of the ps1 disc drive.

As to why they had a HDD optimisation in 2024... Shrugs

reply
arghwhat
53 minutes ago
[-]
Not sure if this is what they did, but you can just put all the things you need together sequentially into a single file and rely on the filesystem to allocate contiguous blocks where possible (using the appropriate size hints to help). It's trivial unpack at loading time without any performance impact.

A filesystem is by itself just one big "file" acting like a file archive.

reply
djmips
43 minutes ago
[-]
I did similar work on a game a long time ago and it took over a month to slim it down to 1/4 of the size but in this case 'at runtime' - the producer wasn't impressed. It looked exactly the same. I wonder if they had any pushback.
reply
rwmj
52 minutes ago
[-]
23GB is supposed to be "slim"?!
reply
onli
44 minutes ago
[-]
Yes. High resolution textures take up a lot of space. Have a look at HD texture mods for skyrim for example. 23GB is more in line with a game from a few years ago, so this really is slim for a modern game with modern graphics.
reply
throw0101c
35 minutes ago
[-]
Back in the day:

> 3-D Hardware Accelerator (with 16MB VRAM with full OpenGL® support; Pentium® II 400 Mhz processor or Athlon® processor; English version of Windows® 2000/XP Operating System; 128 MB RAM; 16-bit high color video mode; 800 MB of uncompressed hard disk space for game files (Minimum Install), plus 300 MB for the Windows swap file […]

* https://store.steampowered.com/app/9010/Return_to_Castle_Wol...

* https://en.wikipedia.org/wiki/Return_to_Castle_Wolfenstein

Even older games would be even smaller:

* https://www.oldgames.sk/en/game/ultima-vi-the-false-prophet/...

* https://en.wikipedia.org/wiki/Ultima_VI:_The_False_Prophet

reply
filleduchaos
21 minutes ago
[-]
I for one simply cannot believe that a game with 4K+ textures and high poly count models is bigger than a game that uses billboard sprites which aren't even HD. Whatever could be the reason? A complete mystery...
reply
mfro
41 minutes ago
[-]
Have you played a big budget video game released in the last 10 years? It’s pretty standard to reach upwards of 60GB.
reply
bilekas
46 minutes ago
[-]
In this day and age it's a gift to only be ~23GB.. I'm reminded of the old days when you literally didn't have the space so had to get creative, now any kind of space optimization isn't even considered.
reply
phoronixrly
38 minutes ago
[-]
I do love rich soundtracks with high quality compression, and textures that look crisp on 4k. And also games with 100+ hours of single-player campaign.
reply
alias_neo
34 minutes ago
[-]
I mean yes, it's a very nice looking game with fairly sizeable worlds and lots of different enemies, biomes, etc.

It's currently over 100GB because of duplicated assets, so this is a game-changer (pun intended).

EDIT: Just checked; 157GB on my SSD.

EDIT2: 26GB after updating with a 9.7GB download, 5.18GB of shaders before and after.

reply
CafeRacer
13 minutes ago
[-]
In other news - "Call of Duty installer now takes additional 131GB of space on the disk"
reply