We always had some issues with our Flash version of our games. From time to time, we detect some IO_ERRORS which we believe we handle properly: when detected, the asset failed is re-enqueued and attempted to be downloaded again. If it's a quick internet disconnection, the asset will be downloaded properly and the player will continue playing as if nothing happened. Unfortunately, we do find people that never gets the asset downloaded, and their only way to finally get it is by refreshing the app.
This happens a lot and unfortunately, if the re-download attempt takes a while, we end up losing the player, which is obviously bad.
So my questions for you guys are:
1. Do you know if we may be missing something in Starling's configuration? Maybe some Policy missing?
2. Our current system for browser games works as follows:
2.1 There's a preloader which will download the main assets for the game to be launched.
2.2 The rest of the assets are always downloaded on demand, i.e. we have an xml file which states exactly the assets that need to be downloaded when going to any specific place in the game. For instance: in order to load the lobby screen, a couple of texture atlases, plus a bunch of different images, sounds, etc will need to be downloaded from our server's CDN. As soon as the assets are downloaded, the loading screen will vanish and the new screen will be shown. We have a custom AssetManager class which overrides the "loadRawAsset" function adding a suffix which looks like this:
"?v=" + Utils.getAppVersion();"
And allows us to control the cached assets on every cilent's browser, basically so they always get the new assets in case of a client update.
We honestly would prefer more of a "downloader" system, which would download all the assets in the client first, and then enqueue them directly from the client as they are requested, instead of having to download the assets at all times (which requires a constant active internet connection from the client's end).
We have read some forums and searched a little and thought for a while about creating a zip file with all the content and download it at the very begining of the game (kind of what Android does with the Expansion Files). I even took a look at this (http://wiki.starling-framework.org/tutorials/loading_zip-files_with_the_assetmanager) but I'm not sure if this is the ideal solution for this "problem".
What do you guys think about it?
Thanks in advance!