Prior to releasing my adventure for the recent TALP Jam, I had never completed a text adventure game. Having a deadline really focused me on completing something (not necessarily the best I was capable of delivering, but certainly, in my opinion, a good finished product). As someone else mentioned, being a perfectionist can end up with you having nothing to show for your work - better to create something whole and then iterate it/improve it, than to have nothing to show for it.
I’d also recommend saving your ideas - you don’t have to put them all in one game. What makes thematic sense for the game you’re writing? Anything that doesn’t make thematic or narrative sense, just jot that idea down to use in a future game and then forget about it. You can always revisit it once you’ve finished your game to decide whether it needs any extra gizmos.
My approach with my next project (motivated and inspired as I have been by the adventure I wrote for the Jam) has been to revisit one of my previous aborted attempts to write a game. The paper design is mostly done, so it just needs implementing:
- Break the game into logical regions (collections of locations narratively connected to a single area - a building, a forest, etc.). So for each of the following steps, I’m only focusing on one region at a time. When I’ve done everything for region 1, I’ll move onto region 2, etc.
- Code the locations and navigable routes between them.
- Code the nouns - both the scenery nouns from the locations in teh region and the inventory nouns for the items that can be found. Just the EXAMINE descriptions for now.
- Consider what a player might reasonably attempt to do with each noun and create a custom response to it. Again, this isn’t about coding the game logic that will progress the adventure, just providing some depth to the game. Someone might think to sit in a chair or read a book, for example - it might not progress the game, but it’d be nice if there was a custom response to that.
- Game logic - implement how each item interacts with the region to progress the adventure (this is the most complex bit, so you could break this into smaller chunks, too - perhaps per noun).
- Test - fully test the region, moving around, manipulating items, and progressing the story elements in that region.
Then repeat for the other regions. You’ll notice that step 5 gets longer because a lot of your nouns will probably need to interact with other nouns outside the region in which they were found. But what I’ve found is that you get a sense of progress and momentum. In the adventure on which I’m working at the moment, you can ‘solve’ the first region within 6 commands, even though there’s loads more to do in that region that’s relevant later in the game.
And there’s a concept in software development of an MVP - a minimum viable product - for the first run through the above, don’t overengineer the game with lots of cool features, ideas, and responses. Ask yourself what the minimum amount of information, coding, tweaks, etc., you need to do is to create a game that you can play end-to-end. Then you can always think of cool extra things to add to the game, additional error checking, additional puzzles, additional verbs, additional custom responses, etc.
As a final point, I’d also say that you can collaborate with someone else on your game. Maybe you’re weaker on designing than coding, or maybe writing, or whatever. If there’s a adventure game design skill you’d like to develop, I’m sure you’d get a dozen offers from people on this forum to work with you to push through whatever you feel are the obstacles to you completing a game. Even just having a scheduled Zoom call with someone to discuss progress can motivate you to have something to show them!