In recent years, massive patch download sizes have caused untold ire among players, but it’s also a serious climate concern.
Unfortunately when it comes to patches, we often end up wasting gigabytes upon gigabytes because our games aren’t properly compartmentalized, meaning that even changes to a few megabytes of data often end up as patches that are nearly the size of the game itself. This kind of restructure can be extremely difficult to fix after the game is released, so it’s worth thinking about early.
Some delivery systems (such as Steam) use a deep delta system for patches, meaning that it only downloads the parts of a file that are different from what’s already installed on the user’s system, and then pieces the new file together locally. This can save massive amounts of energy! But console systems still need to download every changed file in its entirety when patching. To work around this, you must take care not to bake your whole game into a single file – take the time to split it up. Ideally, organize it so the parts you know are likely to get changed (such as code logic or balancing data) are separate and can be updated easily without touching any other content.
How to do this differs from engine to engine. In Unity for example, the most straightforward way is to use Asset Bundles for loading.