backgroundintro.gif

Phantom Book

In the spring of 2021, I began learning to write programs in Python and Pygame. After obtaining some basic knowledge, I decided to develop a mystery game called Phantom Book. In this dialogue-based RPG, players strategically interrogate a murder suspect by selecting various questions and remarks to say as the protagonist, a private investigator.

This is one of the initial decision tree sketches I made before writing any of the game’s code.

This is one of the initial decision tree sketches I made before writing any of the game’s code.

 

The biggest ambition I had with this game was to give the player freedom in their choices, at least as much freedom as I could manage given my beginner status in game development. Phantom Book has a selection of disciplines the player can choose from, which makes them more likely to succeed in certain tactics of interrogation. These disciplines were designed similarly to modifiers in the die-roll mechanics of standard tabletop RPGs. Apart from these implemented structures, it’s up to the player to evaluate the information being given to them through the interrogation dialogue, and to formulate their own decisions. In addition, I wanted to use this same idea to present the narrative of the game, as an unravelling story expanded by the player’s trajectory through the interrogation.

The process of writing Phantom Book’s script was a new experience for me. Instead of telling one (mostly) linear story, as I had become used to with screenwriting and fiction, this was like writing multiple variations of the same story and combining them into a final product. I had to put a lot of thought into how each dialogue option could propel the plot forwards in any given direction, while keeping it on course towards the selection of endings that players could reach.

A glimpse into the immense blocks of code I’ve been working on simultaneously. Seeing how much work goes into even a simple game was truly astonishing to me.

A glimpse into the immense blocks of code I’ve been working on simultaneously. Seeing how much work goes into even a simple game was truly astonishing to me.

Here’s an excerpt of the script I wrote for the game. You can see how I had to label each piece of dialogue to keep track of the story’s multi-channel framework.

Here’s an excerpt of the script I wrote for the game. You can see how I had to label each piece of dialogue to keep track of the story’s multi-channel framework.

Phantom Book: Pixel Art

 

Here is all of the original pixel art that I’ve completed so far for the game. Having never done pixel art before, there was certainly a learning curve. Fortunately, I managed to find software that was accommodating for beginners.

A work in progress.

Even after putting many hours into the development process of this game and its assets, I’m far from completing it. Although I’m taking a hiatus period from working on Phantom Book while resuming in-person classes for college, I fully intend to finish this game in the near future.