I plan on deploying my game for both windows & mac from a single installation file, I'm still not 100% sure how I will accomplish this but I could make a simple autorun with a flash file that allows the user to choose to either install mac or windows version, then it can continue to run the installer according to what the user selected. In theory it sounds simple, if and when I figure it out I will be sure to post a tutorial on how to do such a thing.
This is not a good solution (it's not practised in the software industry). You're going to have many problems setting this up and will end up adding an extra dependency (Flash in your case, which requires a Flash player which is going out of fashion as of late).
The closest equivalent to this that's done in industry is having both binaries on a single CD ROM with the Mac version being a standard Finder-drag installer and the Windows version starting an executable with the autorun.
There is a good reason why we use separate download links for Mac and Windows (Upload/download bandwidth is not a good argument - chances are a user will only down the Mac or Windows version so there's going to be no extra bandwidth usage beyond the initial upload, which is 1-off).
A valid concern would be server storage, but if that's such a big problem then it can be resolved with server-side packaging, so you only have 1 copy of the assets and they are bundled into the download when the user clicks the download button. Or you could make your game download the assets from the binary when you run it, so the user only downloads a light binary and then when running it all the files needed are pulled.
Doing what everyone else does should be the obvious solution here; [
Download for Mac |
Download for Windows ]
As for packaging; .dmg for OSX and an installation binary for Windows (.msi/.exe) is the normal practise. If that's too much, then upload a .zip (not ideal, but still an acceptable solution).