Skip to main content
Settings
Search
Appearance
Theme Mode
About
Jekyll v3.10.0
Environment Production
Last Build
2026-06-18 05:38 UTC
Current Environment Production
Build Time Jun 18, 05:38
Jekyll v3.10.0
Build env (JEKYLL_ENV) production
Page Location
Page Info
Layout quest
Collection quests
Path _quests/0000/bashcrawl/vault.md
URL /quests/0000/vault/
Date 2026-05-22
Theme Skin
SVG Backgrounds
Layer Opacity
0.6
0.04
0.08

Bashcrawl Vault: Environment Variables and the Goblet Puzzle

Master environment variables in Bashcrawl's Vault using export, echo $VAR, and env. Solve the goblet puzzle in the stronghold and survive a ghost encounter.

🌱 Lvl 0000Apprentice ⚔️ Side Quest 🟡 Medium 25-30 minutes

Bashcrawl Vault: Environment Variables and the Goblet Puzzle

Set, export, and inspect environment variables to solve the vault goblet puzzle, survive the ghost, and claim the key fragment.

Primary Tech
🛠️ bash
Skill Focus
Fullstack
Series
Bashcrawl Adventure Path
Author
IT-Journey Team
XP Range
⚡ 0-250

Behind a heavy iron door, the Vault holds the dungeon’s most powerful secrets — not gold and jewels, but the invisible variables that shape every shell. Set them correctly, or the ghost devours you.

🕹️ Play This Chamber

This page is your walkthrough and strategy guide — play right here in the browser, then follow the steps below.

🕹️ Bashcrawl — Web Terminal Open full screen ↗

The game loads in the Entrance. Use cd to make your way to the Vault chamber, then follow the walkthrough below. Progress saves in your browser. Prefer a real shell? See Install & Play Locally.

🎯 Quest Objectives

  • Set and read shell variables with = and $VAR
  • Export a variable with export so child processes see it
  • Use env and printenv to inspect the shell environment
  • Solve the goblet puzzle in the stronghold
  • Survive the ghost encounter in the lab
  • Collect the vault key fragment

�️ Quest Prerequisites

⚡ Command Cheatsheet

Command What It Does
VAR=value Set a shell variable (local to current shell)
export VAR=value Set and export to child processes
echo $VAR Print a variable’s value
env Show all exported environment variables
printenv VAR Print a specific env variable
unset VAR Remove a variable
export -p List all exports in a reusable format

Local vs Exported Variables

# Local — child scripts cannot see this:
SECRET=password

# Exported — child scripts and subshells inherit it:
export SECRET=password

# Verify inheritance:
export GREETING="Hello Dungeon"
bash -c 'echo $GREETING'   # prints: Hello Dungeon

🗺️ Walkthrough

Step 1 — Enter the vault and read the stronghold scroll

cd .VAULT          # The vault may be hidden — use ls -a
ls -F
# stronghold/  nursery/  lab/  vault_scroll

cat vault_scroll

The scroll explains that each sub-area requires a specific environment variable to be set correctly.

Step 2 — Stronghold: solve the goblet puzzle

cd stronghold
ls -F
# goblet*  inscription

cat inscription
# "The goblet demands the colour of magic. Set MAGIC_COLOR before running ./goblet."

export MAGIC_COLOR="purple"
./goblet
# The goblet glows purple. Correct!
# Vault door unlocked.

Different game sessions may demand different values. Read the inscription carefully.

Step 3 — Nursery: learn about local variables

cd ../nursery
ls
# seeds  growth_chart  care_notes

cat care_notes
# "PLANT_NAME must be set to continue growing."

export PLANT_NAME="moonflower"
cat growth_chart

The nursery teaches that variables can store any string — command output, paths, names.

Step 4 — Lab: the ghost encounter

cd ../lab
ls -a
# ghost*  .formula  beakers/

cat .formula
# "To banish the ghost: set GHOST_BANISH to the name found in the beakers."

ls beakers/
cat beakers/vial_7
# Value: "iron_salt"

export GHOST_BANISH="iron_salt"
./ghost
# Ghost banished! The lab is safe.

If GHOST_BANISH is not set or wrong, ./ghost reduces your HP substantially.

Step 5 — Verify your environment

env | grep -E "MAGIC_COLOR|GHOST_BANISH|PLANT_NAME"
# MAGIC_COLOR=purple
# GHOST_BANISH=iron_salt
# PLANT_NAME=moonflower

Step 6 — Collect the vault key fragment

cd ..
ls -F
# vault_key_fragment

cat vault_key_fragment
inventory
# vault key fragment ✓

💡 Common Pitfalls

Problem Cause Fix
$VAR prints empty Variable not exported Use export VAR=value
Ghost still attacks Wrong value in GHOST_BANISH Re-read .formula and beaker vial
env shows nothing Non-exported variable Use export or check with set | grep VAR
./goblet says “wrong” Case mismatch Variable values are case-sensitive

✅ Validation

  • You understand the difference between local and exported variables
  • You ran env and found your variables in the output
  • The goblet puzzle is solved
  • The ghost is banished
  • The vault key fragment is in your inventory

➡️ Next Steps


🖥️ Advanced: Install & Play Locally

The embedded terminal above is the fastest way to play — but the advanced version runs Bashcrawl in a real shell on your own machine, with the full Textual TUI, agent mode, and a genuine filesystem sandbox. The walkthrough on this page works identically in either mode.

Option A — Clone the game

git clone https://github.com/bamr87/bashcrawl.git
cd bashcrawl
./setup.sh        # one-time setup: dirs, permissions, help system
./main.sh         # launch the adventure (interactive menu)

Option B — It already ships with IT-Journey

Bashcrawl lives in this repository as the submodules/bashcrawl git submodule. If you cloned IT-Journey, pull it down and play in place:

git submodule update --init submodules/bashcrawl
cd submodules/bashcrawl
./setup.sh
./main.sh --interactive

Play modes

CommandModeBest for
./main.sh --interactiveTextual TUI (recommended)A rich local interface — needs Python 3 + textual
./main.sh --classicClassic bash emulatorSystems without Python
./main.sh --nativeNative terminalThe full real-filesystem experience
./main.sh --tutorialTutorial modeGuided, step-by-step learning
./main.sh --agentAgent modeAI automation and screenshots
./main.sh --helpHelpAll launcher options

Want to host the browser build yourself? From the game directory run make web-preview and open http://127.0.0.1:8000. The same static build is what powers the embedded terminal above (bamr87.github.io/bashcrawl).

📚 External Resources

Continue your terminal adventure with these resources:


The ghost dissolves. Variables mastered. The vault yields its secrets. 🔒

🕸️ Knowledge Graph

Structured wiki-links connect this quest to the IT-Journey knowledge graph. Open the Obsidian Graph View to explore connections.

Level hub: [[Level 0000 - Foundation & Init World]] Overworld: [[🏰 Overworld - Master Quest Map]] Prerequisites: [[Bashcrawl Cellar: File Types, Aliases, and Emerald Amulet]] Unlocks: [[Bashcrawl Rift: Pipes, Redirection, and the Final Boss]] Sequel quests: [[Bashcrawl Rift: Pipes, Redirection, and the Final Boss]] Obsidian docs: [[Obsidian Knowledge Graph and Wiki Links]]

🎁 Rewards

🕸️ Quest Network

graph TD loading(["Loading quest graph…"])