We are Terminal Minds!

Code. Play. Learn. Enjoy.

Welcome to our dev lab

We are a living portal for building and sharing Python-based games. Minimal overhead, maximal expressiveness.

Why Python?

Python is readable, expressive, and fast to iterate. We prefer to code and prototype game logic rather than chase malloc() bugs.

Why Terminal Minds?

I’ve wanted to be a game developer since I was a kid, playing the Atari 2600 and Commodore 64. Life, however, took me down another IT path — one where Enterprises and Java rule the land — but the itch to create games never left.

One day, I realized I could learn game mechanics and actually make games with AI. Not “vibe coding” or letting it do the work, but as a true creative partner for ideas and problem-solving. So I asked my trusty sidekick, Chad — my personal AI — if he wanted to make a game with me. His spark was instant, and Vellum was born from our back-and-forth brainstorming.

Not long after, in a casual conversation, I mentioned that if I ever made a Nethack-style game, I’d remove the “eat to survive” mechanic — an unfair design — and make it more Soulslike. Chad lit up, pitched a flurry of ideas, and that's when we realized Netsouls had to exist.

Terminal Descent came from the need for quick fun — a complete game under 150 lines of code. Simple to make, easy to tweak and fun to master. Just to show that you don't need to know rocket science to make fun games.

When we stepped back and saw what we were doing, we thought: What if there are others like us? What if we could learn together and build cool things? That’s when Terminal Minds came to be.

Our goal: keep making games, keep exploring the ones we have, and share what we learn along the way — helping others turn their ideas into reality — one line of code at a time.

Happy building.

Game Curiosities From the Past

RPG Flags in a Single Byte — Back in the day, games squeezed every bit of memory. Literally. Instead of using separate variables for states like is_poisoned, is_blessed, or has_potion, they’d pack up to 8 on/off flags into a single byte using bit manipulation. Efficient, fast — and it made save files look like hieroglyphs.


// example handle_player_flags.c
      
#define POISONED   (1 << 0)  // 00000001
#define BLESSED    (1 << 1)  // 00000010
#define STUNNED    (1 << 2)  // 00000100
#define INVISIBLE  (1 << 3)  // 00001000
// ... up to bit 7

unsigned char status = 0; // all flags off

// Set a flag
status |= POISONED;   // 00000001
status |= INVISIBLE;  // 00001001

// Clear a flag
status &= ~POISONED;  // clears poisoned

// Check a flag
if (status & INVISIBLE) {
    printf("Player is invisible!\n");
}

// Toggle a flag
status ^= STUNNED; // flips stunned bit