Skip to content

SearParsley/branching-out

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Branching Out

Solo 24-hour hackathon project built for the 2025 Global Game Jam, (Utah State University).

This project is a terminal-based narrative game implemented in Python using the curses library. The primary goal was to design and ship a complete, playable experience under extreme time constraints, prioritizing a functional game loop, branching state management, and terminal UI responsiveness over long-term extensibility.

Screenshot of title screen

Status: Feature-complete hackathon demo; no active development.

Technical Focus

Within the 24-hour constraint, this project focused on:

  • Implementing a responsive terminal UI using curses
  • Managing game state and branching narrative logic
  • Designing a simple, reusable event system for encounters
  • Handling input and screen redraws cleanly in a CLI environment

Testing, content breadth, and long-term extensibility were explicitly deprioritized in favor of shipping a stable, playable demo.

Constraints & Tradeoffs

Due to the 24-hour solo constraint:

  • The game currently has no explicit win condition
  • Content depth is limited in favor of replayable branching
  • The codebase favors clarity and speed of iteration over abstraction

A natural future extension would be introducing a win condition centered around seed propagation and sapling growth.

Installation

Prerequisites

  • Python 3.x
  • curses library (typically included with Python on Unix-like systems)

Steps

  1. Clone the repository:
git clone https://github.com/SearParsley/branching-out.git
  1. Navigate to project directory:
cd branching-out
  1. (Optional) Set up a virtual environment:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

Usage

Run the game with the following command:

python src/main.py

Make sure you are in the project directory (branching-out).

Exiting the Game

To exit the game, press Q or Ctrl+C.

Game Controls

The controls are very simple. Each text box will have a message followed by one or more numbered options. To choose an option, simply press the key of the number associated with that option. For example, pressing the 2 key would select option number 2. To exit the game, press Q or Ctrl+C

Credits

ASCII assets are credited below for completeness; they are not central to the technical focus of the project.

License

MIT license

About

Solo 24-hour hackathon CLI game built in Python using `curses` library

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages