I was designing my open world RPG's architecture (I am creating it for fun, I don't intend it to be a hit game :D ), and had to stop it, because I ran into a serious wall.
If a create a big open world game, then its size will be big.
Let's imagine that my game has a launcher, which automatically updates itself, when a new patch is found.
Downloading the whole game again is not acceptable, because if there is a minor bugfix, who would download a whole game again, if there is only a minor change?
So somehow I have to make an architecture which is patchable, so if there is an update, my launcher will only download changed files and not the whole client.
When I build my game, 90 % (if not more) of the game data is in one Program Debug Database.
And when I look at a game, for example World of Warcraft, its files are organized in compressed directories. And if there is a minor fix in one zone's particular place (like a tree is missing), they don't have to update the whole game, and not even the whole map, and not even the whole zone.
Instead they only have to update the file, which determines that (for example) 20x20 meter area in the world where is the bug.
So let's get practical with a simple example:
I have one scene with a big terrain in it, and I have to fix a little part of it.
How can I update my released client's buggy parts without downloading the whole client again?
Thanks for your help in advance! :)
There are several ways to do so. One of the most common ways in unity-3d is by asset-bundles. This would allow you to update your game in a similar manner as for example wow.
There are also plenty of assets available in the app store. The one I personally use is M2HPatcher this mainly as it was free at the time. I am not sure if it is still
Collected from the Internet
Please contact [email protected] to delete if infringement.
Comments