I initially ported Alter Ego from C64 to a free web version around 1999. Then I just left it online for years, but eventually I noticed that it had a lot of traffic, so I added Google AdSense ads in 2008. That did surprisingly well, pulling in low hundreds of dollars a month in 2008, and it made even more when I made it available on iOS and Android in 2009.
At that point, I decided to write Choice of the Dragon with Adam Strong-Morse. Choice of the Dragon was only 30K words, compared to Alter Egoâs 200K for the male version + 200K for the female version (with ~80% overlap between the two versions). But, sure enough, even that little game started making ~$50 a month right away 2010, encouraging us to write Choice of Broadsides (nominated for an IGF Nuovo award) and for Jason Stevan Hill to write Choice of the Vampire.
Only after Iâd published Dragon did I publish ChoiceScript publicly, and an author submitted the very first hosted game in March 2010, Popcorn, Soda, ⌠Murder?. We published three hosted games in 2010 alongside four Choice of Games games (Dragon, Broadsides, Vampire, and Choice of Romance); our momentum was pretty good at that point, but each new hit made it bigger. In 2011, Iâd call out Zombie Exodus (which is still one of our bestselling Hosted Games to this day; Zombie Exodus fans almost flooded the XYZZY ballot box). In 2012, we released Heroes Rise (which smashed our previous sales records), and we started offering $10,000 advances. In 2014 we started selling on Steam; Choice of Robots became our first Steam game to get an âOverwhelmingly Positiveâ rating on Steam, which was another big breakthrough.
In all new platforms, you start with a game thatâs good enough to attract some new authors, and eventually someone (maybe you) writes an even better game that attracts even more new authors. Graham Nelson published Curses In 1993, followed by Balances in 1994 and Jigsaw in 1995. That was good enough to get people to write a sizable number of Inform games for the inaugural IFComp in 1995, and the ball was rolling from there.
Thatâs my opinion, too, actually! But whether you call it a âgoodâ game or a âgreatâ game, that game really does have to be âadmirable.â Authors need to say, âI want to make a game just like that.â
My main point is that approximately no authors are surveying the available choice-based systems, evaluating them based on their UI, features, platform support, accessibility, etc. and selecting the system they feel is âbestâ or even âbest for themself.â Instead, theyâre just going with whatever system was used to make the game they admire.
Spending a bunch of time polishing an IF system when there isnât an admirable game yet is like staying at home and practicing your dance moves. If youâre having fun dancing at home, great, but if you were trying to find a dance partner, youâve got to get out there.
My remark that ârealâ programming languages donât thrive in IF is restricted to text-based IF.
Without teetering into whether visual novels are or are not âinteractive fiction,â they are certainly much more difficult to code âfrom scratchâ than text-based interactive fiction.
As my copy-and-paste advice points out, developing a text-based choice-based game is often literally a personâs second program after âhello world,â but graphics typically comes much, much later, especially if youâre adding in even very basic sliding/fading animations. Popular operating systems provide high-power low-level APIs for graphics (DirectX, Metal, Wayland) that integrate well with ârealâ programming languages.
Hardly anybody starts using RenâPy and says, âWhy am I bothering to use RenâPy? I could have just written RenâPy myself in my favorite (non-Python) programming language.â Whereas people say that all the time about the popular text-based choice-based platforms.
Most popular âvideo gameâ development environments support multi-purpose non-DSL programming languages, including Unity and Unreal. There are exceptions⌠Godot is the most popular video-game platform I know of with its own DSL, GDScript, followed by GameMakerâs GML. IMO, those platforms make it easier to get started, but harder to build something admirable.
So itâs not so surprising that the worldâs most popular visual-novel platform would also use a non-DSL language, just because graphics are so hard to program!