Estimated SIZE of my application ?

  • Hello All,

    My current project is still in development and my goal is to build it using the NW.js to aim for PC Windows, MacOS and Linux.

    Since I'm not finished yet with the software I noticed that build it takes some time but couldn't estimate the starting file size of the NW.js even BEFORE my C3 files and assets that I will add as I keep working on it.

    .

    Instead of just build again and again for every little change, I wonder:

    1 - Is there an estimate starting Size for the current NW.js and will it CHANGE drastically on every release?

    2 - Will the FINAL NW.js export always be the same? smaller, larger for Mac OS, Linux, Windows?

    3 - What advice can you give me to REDUCE the overall final size of my application?

    If you're wondering, YES... I actually build few times the UNFINISHED project but it takes time so this is why I'm asking for some pure NW.js SIZE information if you already know an estimated / rough idea how it works, will it change? can I reduce it? etc.. questions above.

    OF COURSE! the obvious test is to build an Empty project with NW.js won't answer all my question fully because my Software also contains different assets so I rather know a bit more information about how it works, this is WHY I'm asking you guys that you know deeper information and have more experience than me for sure! :)

    .

    Any other suggestions, ideas related to this subject will be helpful and appreciated.

    Thanks ahead everyone!

    Tagged:

  • If your current export is, say, 100MB, it will only significantly grow in size if you add more assets to the project - images, sounds, big files. Other things like the amount of code, plugins used etc. are negligible.

  • If your current export is, say, 100MB, it will only significantly grow in size if you add more assets to the project - images, sounds, big files. Other things like the amount of code, plugins used etc. are negligible.

    Oh... this is scary, I just had a conversation with one of my colleagues, I showed him my work in progress and he was defiantly surprised from it (consider it's not finished yet).

    After he played with it a bit I brought up the compile subject and he suggested to export it using native .exe I explained to him that I'm using a game engine called "Construct 3" and there is no such option and the closest thing is using NW.js (after he done laughing at me) he explained to me that by using NW.js my project will become HUGE! which means also slower loading times and download, and it's not efficient in code since it's based on a browser wrapper etc.. and many other details I honestly don't understand as I'm not a programmer and he know that so he tried to explain it "slowly"...

    .

    After I explained to him that C3 is my current choice since I'm NOT a programmer (and he knows that) he still insist that I'm wasting my time working on my current project with such limited game engine which he never heard about before he was surprised how come it can't even export to native exe file which is industry standard for years and it will remain for many future years ahead with all the respect to HTML5 and so on blah blah blah (technical things that I can't even follow here).

    .

    At the end, he suggested to either wait for the game engine I'm using (C3 obviously!) will add this basic feature unless they have reasons to not do so (probably true) the other options are to port my project to either pure code or based on a game engine that actually supports native .exe which will be MUCH more efficient and size wise. (EASY for him to say) as he's a very experience programmer and I'm NOT! ;)

    After few tests I'm afraid he was correct as I didn't even start importing my assets (which will defiantly make the project bigger) it's already around 120 MB ! (for Windows OS) and it's pure UI which doesn't make any justify to the size of the build and I don't see any info yet about NW.js getting smaller or change in size for other OS... this is sure bad news for me.

    .

    Unfortunately, as for now I have no choice but to use C3 and NW.js but these facts totally discouraged me to be honest... for now I'll probably keep working on this project using C3 because porting it is something else will cost extra $$$ that I cannot afford anyway at this time.

    With all the discouraging vibes... I still LOVE C3 I think it's a good start to learn how to program basic things, and I love learning new things every day I ran into an issue, so back to work! :)

  • Tell them to read the case against native engines. Construct 3 has a sophisticated engine and compares well to native engines. I'd guess their impression is 5-10 years out of date. If you want a small export, you can always go for a HTML5 export - which is far smaller than most native apps could ever achieve!

  • Tell them to read the case against native engines. Construct 3 has a sophisticated engine and compares well to native engines. I'd guess their impression is 5-10 years out of date. If you want a small export, you can always go for a HTML5 export - which is far smaller than most native apps could ever achieve!

    Thanks for the reply Ashley, I will email the link to my colleague since I don't understand the technical details explained, All I know is what works and what not, All I know is that I would love to have a native .EXE as an EXTRA option, again... For my project or future game project I don't need the HTML5 as I don't make anything for mobile or website, All I care as a user is a pure Windows OS / Mac OS / Linux build with the smallest size.

    .

    At the end of the day if I want a standalone .EXE (which is the case) my project is getting HUGE I don't have other option such as native .EXE and if I had... my project will be much smaller without all the extra stuff that around the NW.js which makes my project HUGE for no needed reason.

    Conclusion: as for my current project I'm not interested in HTML5 export as you suggested but only in standalone .exe because I don't want it to work on mobile or browsers, but ONLY on PC operation systems, so... NW.js is my only option by using C3 and the size of my project is too big before I even added all my extra assets, this is scary!

    .

    I need a solution:

    Can you suggest me at least how can I reduce the final size of my project beside compression?

    Are there any "secret" things I can do? since native .EXE is not there to save the day and I'm stuck with NW.js in order to get a wrapped browser as disguised standalone .EXE

    .

    Any magic I can do to reduce the build size? it will REALLY help me out here, any good advice, tips beside the compression will be GREAT!

    Thanks ahead :)

  • NW.js does provide a native EXE, in the sense there's a .exe file you double click and it runs.

    If you need a small file size is publishing to the web really not an option? That is also much easier to distribute and skips any install process, so is much more likely to reach lots of players. Normally people want a desktop app to publish to a store like Steam where 50GB+ game downloads are common, so a game in the region of 100-200MB is actually comparatively tiny there.

  • I totally agree, it make sense when it comes to GAMES they could be HUGE! no doubt about that.

    So I can say for my future game project, I don't have to care about this. :)

    But if you're like me using creation softwares (and I use LOTS of them) they are about 10-50 MB those with examples and presets and assets may get to 100 roughly and barely that... while mine is still without much assets and already about 120 MB.

    I don't mind if my software will be around 150-200MB on first release, because the thing is that I will add more and MORE assets in the future updates means it will keep growing, that's the reason why my after the smallest size as possible for starting point.

    Things I did so far but didn't help much:

    - Use PNG compression when possible (I didn't like how the quality looks)

    - Crop the PNG images to minimal space (no extra empty space around)

    - Preloader sure can help the user for something to look at "splash screen" while loading (working on it)

    .

    Ashley can you please give me some extra tips on the NW.js compression options?

    will it hurt the PNG quality? anything else I should be aware of using or not using from your knowlege?

    Other things I can consider "get rid" of? to make the final build size smaller?

    Anything related to my non-game / software / project will sure help.

    Thanks ahead! :)

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Well, my tip to avoid the NW.js size overhead, is to not use NW.js. Why not publish to the web? An empty minified project with compressed transmission (as many servers do automatically) is just 240kb. It's an incredibly tiny overhead - far smaller even than other tools which have per-platform ports of native engines.

  • I'm still on developing stage but my main goal is to sell it on Steam, they were asking for .EXE or NW.js with EXE when I last talked with them.

  • Well, on Steam the size hardly matters as I pointed out - anything less than 1GB is tiny by the standards of Steam.

  • like Dop said above, the size will be determined by the assets you include - the slight overhead NW.js adds only happens once. If you only added more code from here on out, the final file would grow a negligible amount.

    The assets would add the same amount to any other output from any other programming system.

    I have been a programmer for 30+ years- every system has strengths, weaknesses and limitations. You made a great choice with C3! It gives you the opportunity to accomplish your goal. Any other option I know of would be IMMENSELY more difficult for you. Supporting multiple platforms is always a nightmare, but C3/NW.js is as easy as it gets.

  • AllanR, dop2000 and Ashley your tips are very helpful for sure, I take nothing for granted!

    I appreciate your encouraging message Allan, it is true that as a non-programmer + LOTS OF HELP from the community I could actually bring a VERY useful toolset to life. I don't see how I could do anything close to it by myself without hiring someone do program it.

    .

    I'll just have to deal with what I have and hope that people won't go MAD when the size will become insane compare to what it's actually includes.

    Ashley does have a point, steam users usually download so many things... I hope they don't mind because it's a bit different than grabbing a solo file and notice it's obvious size.

    .

    As I said I'm learning new things every day thanks to this amazing community :)

    Thank you everyone!

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)