So... aren't you using AGS this time around? If so, can you discuss why? I am wondering because it seemed work pretty well in Primordia.
There are a lot of reasons to like AGS, and a fair number of reasons not to like it. Having spent the last year doing support for Primordia, and having gone through the process of
making Primordia, the following reasons not to use it stand out the most for me:
(1) AGS patches
horribly. For whatever bizarre reason, a patch is invariably almost as large as the game. Because AGS also compresses horribly, that means that a patch that fixing a couple of scripting errors would be, for Primordia, upwards of a gigabyte. This, however, is not the biggest AGS patch problem. The biggest problem is that aside from the most superficial fixes possible -- typos, essentially -- patches render older saves unusable. Thus, for example, adding a missing sound effect, fixing a graphical glitch, tweaking a puzzle, correcting a flaw in dialogue logic -- all of these things "break" old saves. What that meant for Primordia was a huge pressure not to do post-release bugfixes / quality improvements in a quick "hotfix" kind of way, but instead to consolidate them into one or two huge patches. That, coupled with the coder having to serve a year of compulsory military duty, meant that some bugs never got fixed and others took months to get fixed.
While I deeply believe in aspiring toward a bug-free, perfect release, Primordia made clear to me that even with a crack team of testers -- and we really did have some of the best testers I've ever seen -- you are invariably going to miss stuff, both from a glitch standpoint and from a user-friendliness standpoint. Our next project is hugely more complex in "logic" than Primordia -- it's much more open, both in terms of order and in terms of puzzle solutions* -- which means that bugs are even more likely. We really need an engine that can accommodate regular patching, and AGS ain't that.
(* At least, at this aspirational pre-production stage it is.)
(2) AGS suffers from a variety of user-unfriendly legacy aspects, including (off the top of my head): (a) an external configuration executable that baffles everyone on Steam and, even off Steam, almost anyone who didn't grow up with DOS-era software; (b) poor portability across platforms; (c) poor interaction with Steam overlay; (d) poor interaction with a variety of OSes, graphics cards, and mouse and sound-card drivers; (e) poor interaction with various anti-virus programs; (f) poor support for non-Roman alphabets**; (g) inconsistent sprite resolution when scaling sprites on D3D mode but poor performance (or non-performance) in DDraw mode on many video cards. Some of these things just constitute annoyances for users who are still willing to buy the game (I've probably personally walked a dozen people through how to shut off Logitech software, switch graphics modes, disable anti-virus and Steam overlay, etc.), some of them cut us off totally from certain markets, but all of them were a pain to deal with.
(** Notwithstanding this, an amazing team of Russian hacker/translators did an unofficial Russian translation by hacking the EXE.
)
(3) In general, AGS has a very non-modular environment that makes for difficult distribute development (jargon FTW!). Put in plain English, AGS creates a coder-level (or code-level) chokepoint. All the writing has to be manually put into the source code. All the cutscenes have to be scripted within the engine. All the dialogue trees are written in the engine. All the sprite animations are handled in the engine. This puts a lot of strain on the coder or, alternatively, runs the risk of parallel "branches" of development that then need to somehow be reconciled. As a writer, what I found very frustrating was that there was no particularly good way to spit out the text to proof and then reinsert. Which made finding typos, or doing silly things like determining the total words of writing, tough to do.
To me, AGS still feels very much like a piece of DOS-era game-making software. As someone who grew up making games in DOS -- including using things like SPX for Turbo Pascal or Logowriter or Unlimited Adventures -- there is a strong, positive nostalgia factor that makes me want to stick with AGS, but even as a non-coder, it strikes me as a pretty kludgework kind of engine. The community is amazing, and the huge corpus of games means that there are exemplars for any number of things you'd want to do. It's a great system for picking up and just making something -- as those old DOS engines were. But from the standpoint of trying to build an on-going commercial operation, I don't think it's a particularly viable option. It's telling that the only company that has been able to make an economic go of AGS is WEG, but the overwhelming majority of WEG's game comes from its publishing operations, not Dave's own development. In other words, AGS works for WEG not because it is viable for a small team to produce AGS games for a living but because it's viable for a publisher to take a cut of a large number of small teams' AGS games. And, even then, Dave has indicated that he's moving on from AGS. I think the system's built-in user-base and sturdy features make it a great jumping off point -- we benefited enormously from using it for Primordia -- but its limitations wind up outweighing its benefits.
Well, that's what I think at the moment, anyway. Could turn out we were total idiots for going this route. Wouldn't be the first time I've made a bad decision of this magnitude!