I made test of build sizes for empty project (Defold 1.2.80):
ios 5.3 Mb - great result;
android 2.7 Mb - one of the best result in all cross platform tools;
html5 - 4.9 Mb - very sad result.
Defold 1.2.103:
ios 5.9 Mb
android 2.9 Mb
html5 5.7 Mb
I work with html5-games portals, and main engines for this type of games are:
phaser 1500Kb full version, and 500Kb lite version without physics and some other modules;
cocos 2d js 1980Kb - full version and 424Kb lite version, and you can make your own custom built without some unused modules http://cocos2d-x.org/filecenter/jsbuilder/ .
It’s very tiny engines and sometimes 5Mb is upper limit of whole game with all sources, sounds etc. For example you can see requirements of Spillgames (one of the biggest html5 games sponsor. They have several html5 portals) Azerion - Digital entertainment & media platform
I think, will be great to have new feature auto stripping or pre configurated with possibility turn off unneeded modules (like in cocos2djs).
It’s very useful not only for html5, but and for all other builds.
Defold all time add new features and in few years it can be big and clumsy engine like Unity. (I know many people who want turn off physics or some other things in they games on Unity)
I believe the HTML5 results you’re getting is without gzip? Most modern webservers will automatically gzip the engine when it’s requested, so you should take that into consideration.
Yes, thank you. I know it.
But when I told about other html5 engines or about portals requirements - it’s all before gzip.
Hope you will think about possibility of manual or auto stripping.
It will be very useful feature for indie developers and generally for Defold engine, I am sure.
We are looking into ways of removing unused code, as that is part of our ongoing efforts in optimising the build.
Unfortunately, I don’t have an ETA for you on that.
We are very committed to keeping the executable/package size small, and the performance great.
The current change in size is most likely our new feature of supporting WebP as a compression format (for textures), which allows you to save a LOT of size in your package, outweighing the gain in executable size.
If I were making an HTML5 game portal I would upload the .js file of each engine version that any of the games use to a CDN with long caching, and then link to the appropriate engine version from any game which uses that engine version (and try to rebuild most apps to be on only the latest version). This would make your portal faster with load times as once the user download the engine and has it cached then their browser only needs to download the actual game data for each game and not the game engine over and over. If Defold games became more popular then this kind of practice would be a good idea no matter the engine size, and having the various engine versions hosted on cloudflare, google, and yahoo CDNs would be a good thing to try to get done too.
Yes, this is good point. Thanks. But this advice is only for your own portal.
But when we talk about sponsorship (when buying game licence) all this things are solved on the sponsor side.
And, as I told in my first post, they have some requirements and build size one of them (of course before zipping)
for ex http://www.spilgames.com/developers/integration/html5/integration-requirements/ (same requirements has many other portals)
Traditional update for new version 1.2.84
ios 5.6 Mb ( 1.2.83 == 1.2.84, but +0.3Mb compared with 1.2.80);
android 2.9 Mb (1.2.83 < 1.2.84 0.1Mb, but +0.2Mb compared with 1.2.80);
html5 - 5.3Mb ( 1.2.83 == 1.2.84, and +0.4Mb compared with 1.2.80);
Traditional update for new version 1.2.85
ios 5.6 Mb ( 1.2.84 == 1.2.85, but +0.3Mb compared with 1.2.80);
android 2.8Mb (1.2.84 > 1.2.85);
html5 - 5.3Mb ( 1.2.84 == 1.2.85, and +0.4Mb compared with 1.2.80);