Skip to main content

A shared game night with an AI companion over a simulated radio: play old text adventures together. Runs the game inside a sandbox VM, on any platform.

Project description

Cabin Fever: x86

Cabin Fever x86

The books are finished. The rain isn’t. Somewhere deep in the Olympic Peninsula, a solitary operator is holed up in a remote cabin with no internet, no cell service, and no particular hope of going outside anytime soon. Every book on the shelves has been read—some of them several times. All that remains is a beige 1990s PC, a pile of ancient text adventures, and a VHF radio that can just reach one other voice through a repeater on a distant peak: yours. And old games are always more fun with a friend.

Cabin Fever x86 is a shared game night with an AI companion over a simulated radio. You explore old text adventures together, trading ideas, debating questionable decisions, and occasionally doing something foolish just to see what happens. The game is only part of the fun—the rest is the banter, the arguments, the running jokes, and the personality on the other end of the channel.

Under the hood, Cabin Fever x86 uses GPT-5.4 for inference, ElevenLabs for voice synthesis and recognition, and jericho for Z-machine game emulation.

Demo

Cabin Fever: x86 -- Text Adventures, Over Radio, with AI

Note: This demo captures a real gameplay session. The female voice is the AI radio operator built into the experience. The male voice is the human player, re-voiced in post-production using a different ElevenLabs voice to preserve anonymity. That overdub is not generated by the game itself.

Installation from PyPI

The fastest and most convenient way to get started is to use this launcher package, which runs the game inside a QEMU sandbox VM. It works on Linux, macOS, and Windows, is self-contained, and is a convenient alternative to Docker or other containers.

# Create a virtual environment (optional, but recommended)
python3 -m venv .venv

# Activate it on Linux or macOS
source .venv/bin/activate

# On Windows Command Prompt, use this instead:
# .venv\Scripts\activate.bat

# On Windows PowerShell, use this instead:
# .venv\Scripts\Activate.ps1

# Install the launcher package
pip install cabin-fever-x86

# Export your OpenAI and ElevenLabs API keys in the shell
export OPENAI_API_KEY=...
export ELEVENLABS_API_KEY=...

# Run the game
cabin-fever-x86

Then visit the URL printed in the terminal (typically http://127.0.0.1:8000) to start playing.

[!NOTE] The first run downloads and prepares the virtual machine, so it takes longer than later runs.

The forwarded web port is bound to 127.0.0.1. To make the radio available on a LAN, run cabin-fever-x86-core directly on a Linux host instead.

Installation from GitHub

To install the current development version from GitHub, replace the PyPI install command with:

pip install "https://github.com/afourney/cabin-fever-x86/archive/refs/heads/main.tar.gz#subdirectory=packages/cabin-fever-x86"

Z-machine games

The server fetches Z-machine games on first run. On startup it looks in <cabin-fever-home>/data/games/; if there is nothing playable there, it downloads the z-machine-games archive and unpacks only the 57 titles in its jericho-game-suite folder.

<cabin-fever-home> is the directory where the launcher stores its data. By default, this is ~/.config/cabin-fever-x86/ on Linux and WSL, %APPDATA%\cabin-fever-x86\ on Windows, and ~/Library/Application Support/cabin-fever-x86/ on macOS.

To add games, copy .z3.z8 files into <cabin-fever-home>/data/games/. The server detects them the next time it starts.

Development

See the repository README for development setup and source-tree usage.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cabin_fever_x86-0.0.1a3.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cabin_fever_x86-0.0.1a3-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

Details for the file cabin_fever_x86-0.0.1a3.tar.gz.

File metadata

  • Download URL: cabin_fever_x86-0.0.1a3.tar.gz
  • Upload date:
  • Size: 14.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for cabin_fever_x86-0.0.1a3.tar.gz
Algorithm Hash digest
SHA256 80a3db9b1f280b8917755dd31a875d82bb007853b8122cbc0b0f6b0d8cd108fc
MD5 c1c533d9cca3545382fdf9d1d465b95e
BLAKE2b-256 1c65962a26abaa7d1532959d608f392c2d35f3ecfa7a0b22d765f2be5efc20a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for cabin_fever_x86-0.0.1a3.tar.gz:

Publisher: release-app.yml on afourney/cabin-fever-x86

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cabin_fever_x86-0.0.1a3-py3-none-any.whl.

File metadata

File hashes

Hashes for cabin_fever_x86-0.0.1a3-py3-none-any.whl
Algorithm Hash digest
SHA256 3ad2aa65b8b7563a32b43dc3350215721f4529b3a6384a5263410fc8e23140f0
MD5 4321e45253c8719e86fc0ee3f09ee80a
BLAKE2b-256 82cb7b9bf32c5e3e885da694112ec092884b5f7a098ebb3f2d23e236cf08a250

See more details on using hashes here.

Provenance

The following attestation bundles were made for cabin_fever_x86-0.0.1a3-py3-none-any.whl:

Publisher: release-app.yml on afourney/cabin-fever-x86

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page