Games with rich assets are big, that is true. But I don't see why this causes a problem for delivering a game over the web. It seems like the key requirements here are 1. Ask permission first and 2. Strongly cache the downloaded data. This is just like downloading a desktop game.
On the other hand the strong sandbox of the web is highly desirable for games which are often closed source and made with low security standards. Native sandboxing may be better for performance but won't be as reliable which is a tradeoff that it is nice to have the option for.
The fact that this game can potentially be archived and playable on any device in the future is also very nice.
> It seems like the key requirements here are 1. Ask permission first and 2. Strongly cache the downloaded data. This is just like downloading a desktop game.
There's no sure-fire way to cache large amounts of data in a browser, all you can do is pray that the browser decides to keep it. The more data you load, the less likely that is.
It's a problem that has to be solved at the standards level, adding some kind of "persistent data" permission, but it's been a known issue for years and there's been no progress.
In practice there are limits, it would be very rude to let random websites fill your entire disk until you manually clear the storage. This page tests how much you can store in practice, the current versions of Chrome and Firefox both seem to barf after storing just 10MB: https://arty.name/localstorage.html . What I meant by a persistent data permission is adding an explicit permission prompt which allows an app to bypass that limit and store any amount of data, if the user allows it, which you can't currently do.
On the other hand the strong sandbox of the web is highly desirable for games which are often closed source and made with low security standards. Native sandboxing may be better for performance but won't be as reliable which is a tradeoff that it is nice to have the option for.
The fact that this game can potentially be archived and playable on any device in the future is also very nice.