Typical size (mb's) for flash games?
I'm almost done with my first flash game, but I'm not sure about the size. I'm just doing little 2d games, but when you embed bitmaps (png files), music and sound effects, what was at first only 200k mushrooms upto several mb's very quickly.
In the downloadmarket 30-50mb is common, but I have no idea what the typical "acceptable" flash game size should be. So what size would be considered normal and what size would be considered "very big" for a flash game? Thanks.
Personally, I've always considered 1 mb as a good middle ground. The 56k dialup crowd will still require a couple minutes of downloading, but the broadband crowd not too long. Having said that, I just finished a fairly nice looking slot machine game at 800x600 and it's only 246kb despite there being bitmaps everywhere. On the other hand, a side-scroller I produced clocked in at 2.2 mb, but it's had a lot of detail and gameplay comparable to a classic console side-scroller.
I can share a few "best practices" I use in my own projects:
- Use WAV files for sound, set them to MP3 and then experiment with the compression settings in Flash for a balance of what is small, but still sounds good. (You can do this either individually for each sound file, or Then sacrifice quality for size if the entire project file gets too large.
- Crop images tightly and save using PNG. For low-color images I convert to an optimized Index palette, and for higher I just save without any compression (in other words I click "save as", not "save for web"). I then let Flash handle the compression rather than having to go BACK into Photoshop and re-save everything again when trying to tweak file size.
Again, I tweak settings sometimes individually per asset in the library, or sometimes I leave it to be handled by the global option in "Publish" settings.
- Turn on Compression in the Publish options, of course.
- Turning off Trace in the Publish options sometimes saves a few kb (but not much).
- Smartly re-use code and assets as much as possible.
The above assumes you're using the IDE. If you're using Flex or something else where everything is linked in from external, you might have to go through the pain of saving optimized from Flash, and same for MP3 with an MP3 encoder (someone else can clarify on this... I don't know if Flex and other compilers handle the compression of these assets like the IDE does)
Last edited by Ray Beez; 02-05-2009 at 04:06 PM.
in my oppinion
tiny: 0 - 200 KB;
smal: 200 - 700 KB
Medium: 800 - 1400 KB
Large: 1500 - 4000 KB
to Large: 4000 - 9000 KB
dont know about compressions league: 9 - 32 MB
what propably matters though is the waiting time a regular user needs (use the bandwidth profiler for this to test various download speeds). Wainting +30 seconds for a flash movie can already be considered as long,- having to wait up to 1 minute is defenitly to long even more if there is no feedback inbetween like a mini game, loading bar or mini game.
apart from the common compression techniques (JPG,gif limited color table, mp3,...) its very important to
- scale things down to the real needed size.
- Use vectors where they make sense, bitmaps and PNG alphas where they are usefull ect.
other things that can reduce the filesize are:
- stay away from components
- use less sounds/ music embed stuff
- embedding only fonts you need and not to much fonts
- slice up images and recycle some parts as often as possible- for example GUI`s where corners are flipped or rotated on the other corners.
Thanks for the replies. I'm using flashdevelop/flex sdk. Is there a compress option somewhere?
use photoshop for bitmap compressions,- or embed via swf library (can be embedded as well) and compress in the IDE ahead.
Sound tends to be the biggest part of a flash games's size. If you have many tracks, use the compression at high.
Guess I'm limited when doing things juraasic style. (embed, all code, no timelines, no swf libraries, etc.) The biggest thing is the music, how important is music in flash games? I cut some of the music out, right now the size is down to 900k. But it used to be 1.3mb. If I take out the music, it would down to around 400k. I've already compressed the music highly, I could go lower but then it really sounds awful.
If the music is good then keep it in, as I don't think you are anywhere near the point you need to worry about your game being too big. My games have ranged from 1.5mb to just under 4mb, and most of them are roughly 2mb. Out of the hundreds of comments I've read about my games, I never saw anyone say they thought the loading time was too long, so I would say 2 to 3 mb is perfectly acceptable.
Personally, I tend to keep my music stereo, and compress it to 32 kbps which I think sounds reasonable. At that compression rate, a 4 or 5 minute track probably comes in at around 1mb. Definitely don't compress it to the point it sounds bad.
If you don't need all your assets at the very beginning, you can load them dynamically after the main swf is loaded (e.g., sound tracks) using urlloader.
I wouldn't say 4000Kb - 9000Kb is too large. A lot of successful games are this size or larger (i.e. SCGM3, Sonny, etc...)
Originally Posted by renderhjs
That said, these games have a lot to them, so they require all that space. If your game really needs to be that big, make it that big. People don't mind waiting a little longer if it's a quality game, and in 2009 most people who would be playing your game have high speed anyway. If it's just a simple side-scroller and you're including a full soundtrack at 160kbps, you might wanna cut back a little
initial load! - not all in all and everything explored. If you have a initial load of that size than imo. its just large.
Of course if you smartly load assets in a streaming way so only if they are needed (which each advanced flash engine usually has) its basicly without limit but what imo. matters is the initial start loading time - the first loading time before the game literally can begin.
It does? I don't think so. How many games, no matter how advanced, actually load in assets via url? Not many that I know of. The fact is that most of the big portals don't like it - they want a single self contained swf that doesn't rely on external files, so that it can be easily distributed, and don't want every version of the game across the internet to break if the asset server goes down. Beside that, if you're releasing a game that is going to be played millions of times, not many developers would be willing to host the assets on their own server anyway due to the bandwidth used up. About the only communication most games make with an external server are the highscores and a tracking bot, and some portals (Armor Games for example) don't even allow that.
if you smartly load assets in a streaming way so only if they are needed (which each advanced flash engine usually has)
those Actionscript 1 movies on those mass-game portal sites with art-based engines probaly not yes. Because booth the lazy portals and the ones created it are fine with how things are since +5 years in terms of development. Of course the portals should host the additional content but that is another story.
It does? I don't think so. How many games, no matter how advanced, actually load in assets via url? Not many that I know of
Anything complex with AS3 usually has to load things at some point dynamicly beacuse putting 19 MB or so in a single SWF is just stupid if those 19 MB are for example the whole possible amount of data that could be possible expierenced.
Another reason is that with frameworks such as papervision or other complex ones its just natural to load textures, models, sprites, videos, xml, database queries ect. once they are needed.
Sure - if you're making a 19mb game with video and 3d to be hosted on a single website, then streaming is the way to go. But the context of this thread is about 'typical flash games'. as3newb is working on a simple 1.3mb 2d game.
Typical flash games, the sort that probably make up 99% of all flash games and might be found on games portals and distributed across the internet, are practically all self contained and do not rely on any streaming. And no that is not restricted to as1 art-based games - that includes thousands of more complex as3 games with elements like physics engines and even 3d. Also I think it's wrong to assume that it's due to laziness on the part of the portal - it's a matter of practicality when it comes to mass distribution, as I mentioned above. And it's certainly not due to laziness on the part of the developer - in many cases it would be easier to have things streaming in .... it can be quite a challenge making an ambitious game that is entirely self contained.
Last edited by _Ric_; 02-06-2009 at 11:14 AM.
To be frank, i think even a 1.0mb game may be considered "large", depending on it's entertaining power towards the user! basically when building a game, you must consider whether you can grab the player's attention from the very first second, rather than the file size!
For example, if i were to click on a game link and be presented with a white/blank screen, i will probably turn it off within 5 secs! On the other hand, if i could interact with it while its still loading, i will either play with it, or atleast let it finish loading, while i do something else!
How you grab the users attention is upto you, and almost every good game has a different implementation of this, but i can suggest a few tips!
1) Make sure your preloader appears from the very moment the user gets to your game swf!
2) If your game is over 4mb, don't put just a preloader! Cause the transition between 2% to 3% may seem quite large to some players! Rather put in some more values that are updated in more...err...realtime, like bytes remaining! Or better yet, show the remaining time, which almost always lets the user have patience to go through the loading!
3) Don't put much "art" on the loading screen, in other words don't make it heavy! Instead use scripted ornamentation like particle systems!
4) Make the overall loading a bit more interactive! why not show the intro-story, or tutorial, or credits during the loading? This way you will get the players to stay with your game, and also, this way they will actually see some of the texts which they will almost never read while playing the game, and later blame the devoloper for not giving enough details!
The music question is a good one. The music needs to be GOOD and add something of value to the game. Too often games have a soundtrack thrown in that's just generic crap and I click the mute button. Those worthless tracks can add up big chunk to file size.
Here's an example of a game where the music adds a real touch of polish to the overall theme of the game: http://www.gamesbutler.com/game/2449...Dice_Overdose/ but the game clocks in at 2.4mb
Here's one where I felt the music track was WAY too long, and bloated the file too much for what is a very simple game: http://www.lilgames.com/cloud-climber.html It's 1.7mb but could easily have been about 300kb if they just used a short compressed loop.
I find sound and music can still sound pretty good even compressed to 64 or 32 kbs, so don't be afraid to scrunch it down.
Good stuff. I embed everything so I can't create a preloader I'm assuming? (If I can, please point to a tutorial!) Thanks.
Hype over content...
Although I don't know how that'll differ if you're using FD.
As to the size question, I used to go by 1.5meg initial load as that was cartoon networks guideline, and if it's good enough for them...
Now, well I don't really care too much. I'm naturally not wasteful with assets and compress where I can, but the majority of users are on 2meg + pipes, so it's not an issue for most people ( Also if you're doing a game with ads, the ads will usually last longer than any sized file preloading ).
Anything over 2 meg and I'm starting to wince a little, but it's no longer the end of the world.
My largest game was about 800kB, most are < 500kB.
Click Here to Expand Forum to Full Width
Poll by Flashkit.com