This is my interpretation of the communities. VNs are way huger than anything we do here as a community, and while I think choices and episode died out a bit they were also mainstream.
After they, Choicescript and itch twine games have a much bigger audience than parser games.
Among parser game enthusiasts, most think it died out long ago and focus on 80s games or retro things. I think most of the random people that pop up on here marketing new parser writing systems are from this group. People like this buy games like Hadean Lands when they see them on Steam.
The small group of people that have been working on “new style” parser games in groups has significant overlap with ifcomp and intfiction. So they’re an outsized part of the ifcomp community.
VNs are IF and fit into competitions, they’re just such a huge category that it is probably easier just to part of the VN community than in the little backwater of IFcomp and intfiction. Similarly, ifdb doesn’t document every VN because it would more than double the database size.
I would say that for the last… 10-20 years or so it’s been the case that typical expectations of how good a parser ‘should’ be, and which features are included, make it prohibitive to roll your own parser unless you really, really want to do it for its own sake or you are making a deliberate throwback (eg game with strict two-word parsing) or, most likely, both.
Can confirm. I’m almost six years into rolling my own parser. I’ve always told people that there are probably not more than a couple thousand people on the planet who would even be interested in such a thing, and after hanging out here for awhile, I suspect that number is only in the single or double digits because most everyone here is already fully invested in their chosen platforms. But I keep plugging away anyhow because I enjoy the challenge.
I’ve always thought that writing your own parser is like writing your own operating system. It’s a fun hobby that lots of people enjoy, and a few even make it big (Linux, Inform). But you have to go into it with the assumption that (1) it will be hard, and (2) few other people will care.
Homebrew parsers can be sophisticated, polished, or easy to implement—pick two.
For about ten years I said that the last feature-complete IF parser library had already been written – nobody would bother doing another one. That is, plenty of people would start one, but not to the level where other people would want to use it.
Then Dialog came along and proved me wrong. So, you know. :)
In ZILF’s case, I think it took about 7 months to implement all the parser features necessary to run Cloak of Darkness, and then about another 4 months to implement the remaining features needed for a port of Advent that’s more or less up to Infocom standards. Call it one full year of working on it as much as I reasonably could while holding down a day job and a marriage.
That’s only counting the time it took to implement a parser based on a well-documented, tried-and-tested design, though: I knew which parts I was going to need and how they were supposed to interact. If I had truly started from scratch, I would’ve spent a lot more time figuring out how to structure a parser through trial and error.
Thanks Tara. That new(?) ZILF web site looks great. Much better than wading through GitLab and wondering what the hell you have to do. You should promote this more, especially now that you’ve got a release candidate for the new version.
I’ve updated the links on the three Text Adventure Literacy Jam home pages for 2023 to 2025, just in case anyone stumbles on them.
As someone prototyping a game with text adventure segments within an Unreal Engine 5 context, there is in fact quite a lot I can do on the graphics side. Everything is set up so that items are actors (instanced objects in the 3d world) and that they can have a physical presence in the 3D world, and a static mesh (3d model) associated with them. I am currently mulling over having every item display a picture when examined. Currently there are no images. Rooms, too, can have images. Live feeds, even. Lots of possible tricks like that in UE5.
But there is the broader question of what I am trying to achieve. Classic sci fi books, for example, like other genres (excepting kids books), does not have Illustrations. We use words to invoke imagery, sense of place, etc. If I add too much graphics to my deliberately old-school text adventure, do I make it feel redundant? If I show too much 3D world, will players just want to play everything in the 3D world? Dunno - that’s why we prototype.
I should add that I am not aiming to provide a text adventure engine for general use. I am trying to keep the implementation general and flexible, but not to tie myself up with extra limitations/requirements. I am trying to keep things tightly scoped, as I am well aware of the tendency for these sorts of projects to drag on for years in pursuit of perfection. The probably ill-advised integration into UE5 has demands that off the shelf stuff is ill-equipped to meet. But, if I’m honest, I am just another of those people who wanted to make their own thing, for shits and giggles.
Oh, I’m also planning to have a basic map feature (if it doesn’t suck in practice) possibly overlaid on a realtime shot grabbed by a camera looking down on the landscape. Well within my wheelhouse as a UE5 dev, but I have no idea if it will improve or worsen the immersion.
Hmm, the last one I wrote was in C# using XNA, yes that was a while ago! That is what I was thinking of resurrecting. It had a text input screen area, a responses (exits, inventory, short location, etc screen area, and a graphical screen area. My old code was probably a bit rubbish and I could do much better now. If I was able to add images I would have shown an example.
So basically, most people use existing authoring systems because people expect a parser to be fairly advanced now? But there is still a market for simple verb/noun parser based games that are intentional throwbacks. I’m looking at making a simple verb/noun parser from scratch (yes I’ve done it before and it isn’t that complicated) I’m also looking to integrate a simple ELIZA type ‘chat’ aspect to the adventure, where you have to talk to a character(s) and hit specific keywords opening up different parts of the adventure. It sounds fun but may be a disaster! It’s the programming I like more than the actual game design part. Then I’ve been a full-time commercial developer for around 30 years now!
Last year’s ECTOCOMP (Grand Guignol) winner used what’s effectively a basic verb-noun parser, with no command ever requiring more than two words, and there’s one person who consistently enters IFComp with super-stripped-down parsers; one year his entry was played entirely with single keystrokes. So there’s definitely still a niche!
I would suggest, if you’re going to write a new system, to concentrate on making it do things that other systems do not do, or do poorly. The parser can be an afterthought, if it’s there at all.
The existing legacy systems have a parser plenty good enough to manipulate their corresponding “game world”. So a better one, would not be so impressive.
Meanwhile, there are many new things that an IF system could do. And it would be these things that make writing a new system worthwhile.
Like what?
Some ideas:
Handles media easily, including pictures, sounds, ambience/music, video, animation.
Has a “publish” process that emits an EXE (windows), APK (Android), .APP (OSX/iOS), Linux binary and index.htl web.
I would add that a good conversation system with NPCs would be a standout feature. Beyond the current “Ask, Talk, Tell” and menu systems. They are sometimes clunky and interfere with smooth game play.
I think this is where traditional IF games are the most tricky and frustrating, and where it is hardest to gauge how deep a simulation/interaction goes. I think more hand-holding is needed in dialogue/player interactions. I have some ideas, actually, which I’m trying to get into a prototype shortly.
I think you can keep the absolutely flexible and free interactions you can have with “tell X about”, “ask X for”, “ask X about” but I think an optional layer of something on top of that might help. Some suggested lines/interactions, for example, closer to hypertext style IF, and maybe also something to present visually some of the options for discussion. Like I said, I have some ideas, but we’ll see if they’re up to much.
It’s certainly an area where I think you have to step back and say ‘did this ever work very well?’. If the answer is no, you need to try something new.
I am having similar thoughts as regards hints - because the other main thing that held me back when playing older IF games is when you get stuck. Totally stuck. Maybe it’s a big interactive world and there’s just not enough of a signpost about where to go. My view is that (in my game at least) there are adventure sections that are just part of a broader narrative, so my priority is to get players through those sections by hook or by crook. Getting absolutely stuck in an IF game is for sure a pleasure for some, but not for most.
So I tried putting in a pretty comprehensive hint system, with hints appearing according to how the game is flowing. Too long not making progress with X means a hint on X appears - not exactly rocket science. Early playtesting reveals that people sometimes resorted to hints, but the word ‘resorted’ is the problem I have. I want people to see the narrative, but not to feel like they cheated to get there. This is how hint systems can taint the game experience, I think.
Anyway, hints are here to stay, I think, but the framing needs to change. To that end, I am currently reworking hints as ‘research’, and adding at least one little minigame so that it feels like extra gameplay instead of cheating. I’ll see how that lands with the testers.