Both games below run entirely in the terminal — no graphics engine, just Python, some ASCII output, and turn-based logic. I built them to practice game-state design, input validation, and writing code that stays readable once a "simple" text game grows more rules than expected.
Operation Tailgate
Operation Tailgate is a text-based submarine command game. You take control of a sub navigating a grid of open water, tracking enemy contacts by sonar pings rather than a visible map, and deciding each turn whether to move, dive, surface, or fire torpedoes. Every decision costs time and gives away your position, so the tension comes from managing limited information rather than reflexes.
- Turn-based sonar and torpedo combat loop
- Randomized enemy patrol patterns each run, so no two games play out the same
- Depth and noise mechanics — moving fast or surfacing makes you easier to detect
- Runs anywhere Python 3 is installed, no dependencies to install
Chicken Command: Defend the Coop
Chicken Command is a lighter, comedic take on the same turn-based structure — you're defending a henhouse from waves of increasingly ridiculous threats using a small squad of chickens, each with different roles. It started as a joke prototype and turned into a full mini-campaign with escalating difficulty and a simple upgrade system between rounds.
- Wave-based defense structure with a difficulty curve across rounds
- Different chicken "units" with distinct abilities and cooldowns
- Simple resource/upgrade system between waves
- Written to be easy to fork and reskin — the wave logic is decoupled from the theme