My First Game Development Experience
So, I tried making a text adventure game in C, and it was a dumpster fire. Let’s talk about that.
What is a text adventure game?
A text adventure game, or interactive fiction as it’s sometimes known, is a type of game where the player inputs commands, similar to a terminal to progress through the game’s story. Here’s an example of what that looks like:
You find yourself in an open field.
You see:
A lamp
A burly guard
A cave entrance to the east
--> get lamp
You get the lamp.
-->
Why would I make a text adventure game?
My background is primarily in programming and writing, not art. Thus, a game that minimizes art and emphasizes programming and writing made the most sense, and that’s exactly what a text adventure game does.
Why would I write it in C?
C is a great programming language for portability (for example, I could port the game to the Commodore 64 pretty easily using cc65), and I could do basically everything I needed to using just the C standard library, since this game is all about printing text and accepting user text inputs.
The problems
I bit off way more than I could chew with this game, as a text adventure game like this has a lot of possible things that could happen and needs to have lots of content in order to be even slightly fun. Not a good idea for a first game.
In addition, the codebase wasn’t really designed with modifying the game data mid-development in mind, as doing so would require me to rewrite a ton of game logic that relied on specific game data being available to read.
I learned some valuable lessons in making this game, and will try making a game with a smaller scope in the future.