Every couple of months a request comes through to add support for exporting via command line arguments. I'd really like to see this added to the engine since I've been able to do it with pretty much all other game engines I've used(not RPG Maker though). I'd like to throw my thoughts and a few use cases out there.
I was at GDC last week and surprisingly I was one of the few developers representing Construct2 there. I talked to a lot of people about C2 and even got some guy at the ClickTeam booth upset(oops?) by mentioning it. In particular I was inspired by this talk by Brian Provinciano: http://schedule.gdconf.com/session/automated-testing-and-instant-replays-in-retro-city-rampage. I would really like to implement a few of the automated testing methods he demonstrated but currently it's impossible because there is no way to export via command line or from a CI server. It's also a bigger priority for me to try and get this working since I'm in the WiiU dev program now and was able to talk with a number of people at GDC about it, I would hate to not be able to deliver. :/
Here is an example of my use case:
- I use git/gitlab(a FOSS github.com clone) for version control and Jenkins-CI as my continuous integration and build server.
- I have all of my C2 games in gitlab currently. On a scheduled or on-demand basis Jenkins would check out a C2 project on one of my Windows server instances
- (Impossible step)From there Jenkins would invoke C2 and export for web.
- Afterwards it would then run some automated tests and report back the results. The build would either succeed or fail based on the results.
- If the build succeeded I could automatically push the export to my web server's protected link so manual QA can begin by myself or alpha testers.
- I could also have separate downstream builds setup to prepare exports for specific platforms.
I understand that this isn't a turnkey solution(not much in game dev is :p) but without a command line option I can't even begin to work on this.
Alternatively if you don't feel like adding in command line options would be worth your time -especially with C3 in in the beginning stages- I have a secondary suggestion. I've tried working around the lack of command line export options by using AutoIt https://www.autoitscript.com/site/autoit/. It's really hacky, brittle and messy but I got it really close to working. The part where AutoIt fails is on the export dialog page. The reason it fails is there is no way to reliably select the same export platform, especially when platforms are being added or deprecated. This could be solved by adding a search dialog to the export dialog like below:
A search dialog would allow me to have AutoIt narrow the platform by typing the exact name then I could have it always click the export option that's left.
Sorry for writing a book but thanks for listening. Optimally command line exporting would be the best solution but if a search dialog is a quicker win I can work with it. Let me know if anything needs clarified.