new-site/content/posts/my-first-gamedev-experience.md

1.8 KiB

title date draft tags
My First Game Development Experience 2023-07-07T11:07:55-07:00 false

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.