openthebox/content/adventures/space/intro.lor
Samuel Bouchet aeae979d05 Fix adventure parsing, add French accents, fix cosmetic translation bug
- Fix Loreline parsing: escape quotes in dialogue, remove [if] bracket
  syntax, remove # in text conflicting with tags
- Add French accents to all 9 .fr.lor translation files (hundreds of fixes)
- Fix cosmetic equip display: use item nameKey lookup instead of
  constructing key from cosmeticValue (fixes StardustLegendary MISSING)
- Deduplicate cosmetics in appearance menu
- Localize all hardcoded strings (welcome, inventory, adventure, cosmetic)
- Add new tests: Loreline parsing (19), cosmetic slot keys, slot+value
  uniqueness (302 total, 0 failures)
2026-03-11 20:40:07 +01:00

206 lines
8.6 KiB
Text

// Space Adventure - Open The Box
// Theme: Space exploration with boxes floating in the void
character captain
name: Captain Nova
character ai
name: ARIA
role: Ship AI
character alien
name: Zx'thorp
role: Alien Merchant
state
fuel: 100
discovered: 0
hasSpaceBox: false
trustAlien: false
beat Intro
The ship hums quietly as you drift through sector 7-G. #intro-hum
ai: Commander, scanners are detecting something unusual. #intro-scan
ai: A box. Floating in space. Defying several laws of physics. #intro-box
captain: A box? In space? #captain-box
choice
Investigate the box #opt-investigate
-> InvestigateBox
Ignore it and continue #opt-ignore
-> IgnoreBox
Run a deep scan first #opt-scan if fuel > 20
fuel -= 20
-> DeepScan
beat DeepScan
ai: Deep scan initiated. Fuel reserves reduced. #deepscan-init
ai: Analysis complete. The box appears to be... sentient? #deepscan-result
ai: It's humming a tune. I believe it's... the box theme. #deepscan-humming
captain: The box theme? #captain-theme
ai: Every box has a theme, Commander. Didn't you know? #ai-theme
choice
Open the sentient box #opt-open-sentient
-> OpenSpaceBox
Try to communicate with it #opt-communicate
-> CommunicateBox
Back away slowly #opt-backaway
-> BackAway
beat InvestigateBox
You approach the box carefully. It's about a meter wide, floating serenely. #investigate-approach
captain: It's... beautiful. #captain-beautiful
ai: Commander, I wouldn't use that word for a box. #ai-beautiful
captain: You don't tell me what words to use for boxes, ARIA. #captain-words
choice
Open it immediately #opt-open-now
-> OpenSpaceBox
Scan it first #opt-scan-first if fuel > 10
fuel -= 10
-> ScanThenOpen
Poke it with a stick #opt-poke
-> PokeBox
Close your eyes and listen to what the box is really saying|||You sense there might be more to this box than meets the eye... #opt-whisper if hasStat("Wisdom", 10)
-> BoxWhisperer
beat BoxWhisperer
markSecretBranch("space_box_whisperer")
You close your eyes. The hum of the ship fades. Something else rises -- a frequency beneath frequencies. #whisper-listen
The box is transmitting. Not data. Not sound. Coordinates woven into the fabric of space-time itself. #whisper-coordinates
ai: Commander, how are you doing that? The box just... aligned with your brainwaves. #ai-brainwaves
captain: I'm not doing anything, ARIA. I'm just listening. #captain-listening
ai: The box has shared a direct route to its home system. No fuel cost. It's folding space around us like... #ai-folding
captain: Like folding a box? #captain-folding
ai: I was going to say \"like origami,\" but yes. Like folding a box. #ai-origami
trustAlien = true
discovered += 1
-> OpenSpaceBox
beat PokeBox
You extend the ship's robotic arm and gently poke the box. #poke-arm
The box rotates 90 degrees and reveals a label: \"THIS SIDE UP\" #poke-label
ai: Commander, I don't think boxes in zero gravity have an \"up\". #ai-gravity
captain: Maybe the box defines its own reality. #captain-reality
ai: That's... philosophically concerning. #ai-philosophy
-> OpenSpaceBox
beat ScanThenOpen
ai: Scan reveals the box contains crystallized starlight and something called a \"Nebula Shard\". #scan-contents
ai: Also what appears to be a very small, very angry alien. #scan-alien
captain: Define \"very small\". #captain-small
ai: Approximately the size of a box. Commander, I think the alien IS a box. #ai-alienbox
-> OpenSpaceBox
beat IgnoreBox
You set course away from the mysterious box. #ignore-course
ai: Commander, the box is... following us. #ai-following
captain: What? #captain-what
ai: It appears to have tiny thrusters. And what I can only describe as determination. #ai-thrusters
captain: A determined box. My favorite kind. #captain-determined
discovered += 1
-> OpenSpaceBox
beat CommunicateBox
captain: ARIA, open a channel to the box. #comm-channel
ai: Commander, it's a box. #ai-itsabox
captain: I said open a channel. #captain-channel
ai: Channel open, Commander. #ai-channelopen
captain: Hello, box. I am Captain Nova. I come in peace. #captain-peace
The box vibrates gently. It seems pleased. #comm-vibrate
ai: Commander, the box just sent us coordinates. And what appears to be... a friendship request? #ai-friendship
trustAlien = true
-> OpenSpaceBox
beat BackAway
You engage reverse thrusters. The sentient box watches you leave. #back-thrusters
ai: Commander, the box looks... sad. #ai-sad
captain: Boxes don't have feelings, ARIA. #captain-feelings
ai: This one does. I'm reading elevated levels of box-sadness. #ai-boxsadness
captain: That's not a real metric. #captain-metric
ai: It is now. Box-sadness level: 7 out of 10. #ai-level
choice
Go back to the box #opt-goback
-> CommunicateBox
Leave for good #opt-leave
-> LeaveForGood
beat LeaveForGood
You leave the sentient box behind. #leave-behind
ai: I hope you're happy, Commander. #ai-happy
captain: I am. No weird space boxes for me today. #captain-happy
ai: Incoming transmission. It's... from the box. #ai-transmission
ai: It says \"you'll be back. they always come back.\" #ai-message
captain: That's ominous. I love it. #captain-ominous
-> Ending
beat OpenSpaceBox
hasSpaceBox = true
discovered += 1
You carefully open the box. Light spills out from within. #open-light
if trustAlien
Inside you find a Nebula Shard, pulsing with friendly energy. #open-friendly
alien: Ah, a fellow box appreciator! Take this as a gift from my collection. #alien-gift
captain: The alien WAS the box? #captain-wasbox
alien: We prefer \"Box-Americans\". Just kidding. I'm Zx'thorp. #alien-intro
-> AlienEncounter
else
Inside you find a Nebula Shard and what appears to be a map to more boxes. #open-normal
ai: Commander, the map shows three more floating boxes in nearby sectors. #ai-morebox
captain: Three more boxes. This is either Christmas or a trap. #captain-christmas
ai: In space, those are often the same thing. #ai-same
-> SpaceExploration
beat AlienEncounter
alien: I've been collecting boxes across the galaxy for centuries. #alien-collecting
alien: Most species open them. Very few appreciate them. #alien-appreciate
captain: I appreciate boxes. Especially ones with good loot. #captain-loot
alien: \"Loot.\" What a crude word for cosmic treasures. #alien-crude
choice
Ask about the galaxy's rarest box #opt-rare-box
alien: The Singularity Box. It contains everything and nothing. Also a coupon. #alien-singularity
-> Ending
Trade items with Zx'thorp #opt-trade
alien: I have a Space Helmet for you. In exchange, I want your sense of wonder. #alien-trade
captain: Deal. Wait-- #captain-deal
-> Ending
Challenge the alien to a box-opening contest #opt-contest
alien: You dare? No one out-opens Zx'thorp! #alien-dare
alien: ...fine. Best of three. You open first. #alien-contest
-> Ending
beat SpaceExploration
ai: Setting course for the nearest box. ETA: approximately one dramatic pause. #explore-course
You arrive at a cluster of three boxes, orbiting each other like a tiny solar system. #explore-cluster
captain: A box system. Literally a system of boxes. #captain-system
ai: The large one appears to contain the other two. It's boxes all the way down. #ai-alltheway
choice
Open the biggest box first #opt-big
You open the biggest box. Inside: two medium boxes and a note. #big-open
The note reads: \"Congratulations! You've found the Box Nebula. Population: boxes.\" #big-note
-> Ending
Open all three at once #opt-all
captain: All three, ARIA. Maximum box velocity. #captain-velocity
ai: That's not a real measurement, but I admire your enthusiasm. #ai-enthusiasm
All three boxes burst open simultaneously. The contents mix together in zero gravity. #all-open
ai: Commander, the items are forming... a bigger box. #ai-biggerbox
captain: Of course they are. #captain-ofcourse
-> Ending
Leave them orbiting, they seem happy #opt-happy
captain: Let them orbit in peace. #captain-orbit
ai: A surprisingly philosophical choice, Commander. #ai-philosophical
ai: The boxes seem to orbit faster. I think they're happy. #ai-happy
-> Ending
beat Ending
ai: Adventure complete. Updating ship's log. #ending-complete
ai: Boxes encountered: $discovered. Box-related existential crises: 1. #ending-log
captain: Only one? We'll do better next time. #captain-next
ai: There's always next time, Commander. The universe is full of boxes. #ai-next
-> .