To sum it up...these are the points I got from it (it's a very long and in-depth post):
Frostbite engine was made for consoles. It wasn't designed to be patched/updated.
Raw BC2 data is about 80Gb
It needs to be about 7Gb (and fit compressed on a DVD)
How do you do this?
Cook the game files into archives. They said this takes about 2 days.
One problem - the cooking of the game files isn't deterministic (i.e. you could cook exactly the same game files and get a different result at the end)
What does this mean?
You can't just patch the cooked archives by comparing them with one another. If you want to edit or add a file in the archive (e.g. models/textures/shaders etc. mostly) you have to re-download the ENTIRE archive.
This makes patching incredibly difficult to change anything except the main game executable. Instead they have to add additional archives that contain the extra files.
= Smaller patch sizes (1Gb instead of 7Gb) but it makes fixing bugs difficult in existing files.
How could it be resolved?
- New patching system that can open the archives and update the individual files
- New deterministic method of cooking the files (allowing differential patching) which they say would take way too much development time (even though they're probably going to run into the same problems with MoH and BF3)
- Use a less-rigid game engine (but open yourself up to modding, hax, stealing of game resources)
And finally - the summation point:
I think that we have a proper Client R8 patch ready for release, but the approach we have been using thus far has been taken as far as it can go. (A bit too far, considering the delays.) We want to continue supporting the game, but if we want to change anything else than the game executable itself, we will need to spend time on figuring out how to do so with a less error-prone patch generation procedure ... and preferably without generating as large patches.