What Disco Elysium Taught Me About Dialogue Trees

Introduction Recently, I started playing the fantastic 2019 video game Disco Elysium, and I was blown away by the sheer amount of dialogue, choices, dice rolls, and consequences. It made me think, “How do you write a dialogue tree like that?” My immediate first thought was SCUMM, or the Script Creation Utility for Maniac Mansion, a game engine developed by then Lucasfilm Games for, you guessed it, Maniac Mansion (1987). I remember hearing about it a few years ago and how you could create locations, items, and dialogue sequences without writing code....

July 3, 2024

Implementing a Merkle Tree in Python

Introduction In this article, we will implement a Merkle Tree in Python, a data structure used extensively in Blockchain technology and other systems requiring data integrity verification. By the end of this article, you will understand how Merkle Trees work, their benefits, what the Merkle Root is, and how to implement all of this in Python. The Merkle Tree A Merkle Tree is a binary hash tree that hashes a collection of data blocks so that any change in the original data results in entirely different values throughout the tree....

July 2, 2024

Bouncing DVD Logo

An attempt to simulate the “Bouncing DVD Logo” (aka “DVD Screensaver”) meme in Python with the pygame library. Recently, I’ve gotten more into Python’s pygame library during research regarding a new personal project I’ll be sharing here soon. That happened roughly simultaneously with my re-discovery of the amazing The Coding Train channel on YouTube. For the uninitiated, The Coding Train is a YouTube channel hosted by Daniel Shiffman, who tasks themselves with solving a so-called Coding Challenge using the p5....

February 11, 2022