Since I’ve had to play with Live Update recently and @Pkeod opened the subject in his previous post, here’s a related idea:
Say your Live Update content is delivered on the filesystem through an external system (say, a Steam DLC depot or an APK Expansion File). Currently, you’d have to read that file, then use
store_resource() to store the resource in Defold’s cache somewhere. This has two undesired side-effects:
- The first load, while
store_resource()is doing its job, is slow. Interrogation spends about 1-2 minutes on first load unzipping resources from the APK Expansion Files and storing them. Granted, it shows progress while doing it, but it’s still testing the players’ patience.
- Doubles the installation size of the game. I’m essentially copying something that already exists on the FS to another place on the FS.
A better way to handle this would be allowing the game to define (through Lua or even better, a native interface, since resource loading, I assume, happens on a separate thread) custom resource loaders.
Or, at least, allowing us to specify a file path (or a path within a zip file, in the case of APK Expansion Files), where to find that particular resource.