At 12/12/17 12:15 AM, Gimmick wrote:
I don't recall Newgrounds Supporter being a thing back then; how would things have unfolded if Swivel were available only to supporters at the time of release?
So, firstly, I wanted to help people out, and I think it's cool to provide software for free. Particularly since all of the SWF->video converters out there cost money and were absolute garbage.
But more importantly, lots of video/audio codecs are patented (including H264), so you're asking for trouble if you try to make a profit from video encoding software. Legally NG would have had to pay license fees to the MPEG group if we sold the software.
Also, as soon as you sell software, you have to provide support, and that's not really something NG had the manpower to do (particularly since Swivel was my 'going away present' to NG).
How would you go about doing [CI] with flash projects? I usually only see them for C++, Java, and more popular languages. Also, does CI make sense if you're not working on OSS, or are the only developer?
If you can build your app on the command line, you should be able to do CI with it. Pure Flash would be tough, but I used Haxe. The AIR SDK has command line tools to bundle the app into an EXE. Unfortunately the big CI providers like Travis and Appveyor cost money if you are closed source. But if you are open source, there is zero reason why you shouldn't be using those services, they're super helpful.
The important thing is to make it as easy as possible to build and package your app. This gets very important once you are developing for multiple platforms. For example, Swivel had to be bundled using an NSIS installer for Windows and by creating a DMG disk image on Mac. Can you imagine doing a game for 3-5 different platforms? Not just Win vs. Mac, but even things like packaging for Steam vs GoG vs Windows Store.
So you want to minimize the steps and automate this stuff as much as possible, even if it's just by making scripts to package your app.